home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 April: Mac OS SDK / Dev.CD Apr 97 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Interfaces / AIncludes / Quickdraw.a < prev    next >
Encoding:
Text File  |  1996-01-24  |  56.9 KB  |  2,587 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        Quickdraw.a
  3. ;
  4. ;    Contains:    QuickDraw Graphics Interfaces.
  5. ;
  6. ;    Version:    Technology:    System 7.5
  7. ;                Package:    Universal Interfaces 2.2 in “MPW” on ETO #20
  8. ;
  9. ;    Copyright:    © 1984-1995 by Apple Computer, Inc.
  10. ;                All rights reserved.
  11. ;
  12. ;    Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  13. ;                stack.  Include the file and version information (from above)
  14. ;                in the problem description and send to:
  15. ;                    Internet:    apple.bugs@applelink.apple.com
  16. ;                    AppleLink:    APPLE.BUGS
  17. ;
  18. ;
  19.  
  20.     IF &TYPE('__QUICKDRAW__') = 'UNDEFINED' THEN
  21. __QUICKDRAW__ SET 1
  22.  
  23.  
  24.     IF &TYPE('__TYPES__') = 'UNDEFINED' THEN
  25.     include 'Types.a'
  26.     ENDIF
  27. ;        include 'ConditionalMacros.a'                                ;
  28.  
  29.     IF &TYPE('__MIXEDMODE__') = 'UNDEFINED' THEN
  30.     include 'MixedMode.a'
  31.     ENDIF
  32.  
  33.     IF &TYPE('__QUICKDRAWTEXT__') = 'UNDEFINED' THEN
  34.     include 'QuickdrawText.a'
  35.     ENDIF
  36.  
  37. invalColReq                        EQU        -1                    ;invalid color table request
  38. ; transfer modes 
  39. srcCopy                            EQU        0                    ;the 16 transfer modes
  40. srcOr                            EQU        1
  41. srcXor                            EQU        2
  42. srcBic                            EQU        3
  43. notSrcCopy                        EQU        4
  44. notSrcOr                        EQU        5
  45. notSrcXor                        EQU        6
  46. notSrcBic                        EQU        7
  47. patCopy                            EQU        8
  48. patOr                            EQU        9
  49. patXor                            EQU        10
  50. patBic                            EQU        11
  51. notPatCopy                        EQU        12
  52. notPatOr                        EQU        13
  53. notPatXor                        EQU        14
  54. notPatBic                        EQU        15
  55. ; Special Text Transfer Mode 
  56. grayishTextOr                    EQU        49
  57. hilitetransfermode                EQU        50
  58. ; Arithmetic transfer modes 
  59. blend                            EQU        32
  60. addPin                            EQU        33
  61.  
  62. addOver                            EQU        34
  63. subPin                            EQU        35
  64. addMax                            EQU        37
  65. adMax                            EQU        37
  66. subOver                            EQU        38
  67. adMin                            EQU        39
  68. ditherCopy                        EQU        64
  69. ; Transparent mode constant 
  70. transparent                        EQU        36
  71. italicBit                        EQU        1
  72. ulineBit                        EQU        2
  73. outlineBit                        EQU        3
  74. shadowBit                        EQU        4
  75. condenseBit                        EQU        5
  76. extendBit                        EQU        6
  77. ; QuickDraw color separation constants 
  78. normalBit                        EQU        0                    ;normal screen mapping
  79. inverseBit                        EQU        1                    ;inverse screen mapping
  80. redBit                            EQU        4                    ;RGB additive mapping
  81. greenBit                        EQU        3
  82. blueBit                            EQU        2
  83. cyanBit                            EQU        8                    ;CMYBk subtractive mapping
  84. magentaBit                        EQU        7
  85. yellowBit                        EQU        6
  86. blackBit                        EQU        5
  87. blackColor                        EQU        33                    ;colors expressed in these mappings
  88. whiteColor                        EQU        30
  89. redColor                        EQU        205
  90.  
  91. greenColor                        EQU        341
  92. blueColor                        EQU        409
  93. cyanColor                        EQU        273
  94. magentaColor                    EQU        137
  95. yellowColor                        EQU        69
  96. picLParen                        EQU        0                    ;standard picture comments
  97. picRParen                        EQU        1
  98. clutType                        EQU        0                    ;0 if lookup table
  99. fixedType                        EQU        1                    ;1 if fixed table
  100. directType                        EQU        2                    ;2 if direct values
  101. gdDevType                        EQU        0                    ;0 = monochrome 1 = color
  102.  
  103. interlacedDevice                EQU        2                    ; 1 if single pixel lines look bad 
  104. roundedDevice                    EQU        5                    ; 1 if device has been “rounded” into the GrayRgn 
  105. hasAuxMenuBar                    EQU        6                    ; 1 if device has an aux menu bar on it 
  106. burstDevice                        EQU        7
  107. ext32Device                        EQU        8
  108. ramInit                            EQU        10                    ;1 if initialized from 'scrn' resource
  109. mainScreen                        EQU        11                    ; 1 if main screen 
  110. allInit                            EQU        12                    ; 1 if all devices initialized 
  111. screenDevice                    EQU        13                    ;1 if screen device [not used]
  112. noDriver                        EQU        14                    ; 1 if no driver for this GDevice 
  113. screenActive                    EQU        15                    ;1 if in use
  114. hiliteBit                        EQU        7                    ;flag bit in HiliteMode (lowMem flag)
  115. pHiliteBit                        EQU        0                    ;flag bit in HiliteMode used with BitClr procedure
  116. defQDColors                        EQU        127                    ;resource ID of clut for default QDColors
  117. ; pixel type 
  118. RGBDirect                        EQU        16                    ; 16 & 32 bits/pixel pixelType value 
  119. ; pmVersion values 
  120. baseAddr32                        EQU        4                    ;pixmap base address is 32-bit address
  121.  
  122. sysPatListID                    EQU        0
  123. iBeamCursor                        EQU        1
  124. crossCursor                        EQU        2
  125. plusCursor                        EQU        3
  126. watchCursor                        EQU        4
  127.  
  128. kQDGrafVerbFrame                EQU        0
  129. kQDGrafVerbPaint                EQU        1
  130. kQDGrafVerbErase                EQU        2
  131. kQDGrafVerbInvert                EQU        3
  132. kQDGrafVerbFill                    EQU        4
  133.  
  134.     IF OLDROUTINENAMES THEN
  135. frame                            EQU        kQDGrafVerbFrame
  136. paint                            EQU        kQDGrafVerbPaint
  137. erase                            EQU        kQDGrafVerbErase
  138. invert                            EQU        kQDGrafVerbInvert
  139. fill                            EQU        kQDGrafVerbFill
  140.     ENDIF
  141.  
  142. ; typedef SInt8             GrafVerb
  143.  
  144. chunky                            EQU        0
  145. chunkyPlanar                    EQU        1
  146. planar                            EQU        2
  147.  
  148. ; typedef SInt8             PixelType
  149. ; typedef short             Bits16[16]
  150. ;**************   IMPORTANT NOTE REGARDING Pattern  **************************************
  151. ;   Patterns were originally defined as:
  152. ;   
  153. ;        C:             typedef unsigned char Pattern[8];
  154. ;        Pascal:        Pattern = PACKED ARRAY [0..7] OF 0..255;
  155. ;        
  156. ;   The old array defintion of Pattern would cause 68000 based CPU's to crash in certain circum-
  157. ;   stances. The new struct definition is safe, but may require source code changes to compile.
  158. ;   Read the details in TechNote "Platforms & Tools" #PT 38.
  159. ;    
  160. ;********************************************************************************************
  161. Pattern                 RECORD    0
  162. pat                         ds.b   8        ; offset: $0 (0)
  163. sizeof                     EQU *            ; size:   $8 (8)
  164.                         ENDR
  165.  
  166. ; typedef struct Pattern     Pattern
  167. ;
  168. ; ConstPatternParam is now longer needed.  It was first created when Pattern was an array.
  169. ; Now that Pattern is a struct, it is more straight forward just add the "const" qualifier
  170. ; on the parameter type (e.g. "const Pattern * pat" instead of "ConstPatternParam pat").
  171. ;
  172. ; typedef Pattern             *PatPtr
  173. ; typedef PatPtr             *PatHandle
  174. ; typedef short             QDErr
  175.  
  176. singleDevicesBit                EQU        0
  177. dontMatchSeedsBit                EQU        1
  178. allDevicesBit                    EQU        2
  179.  
  180. singleDevices                    EQU        1 << singleDevicesBit
  181. dontMatchSeeds                    EQU        1 << dontMatchSeedsBit
  182. allDevices                        EQU        1 << allDevicesBit
  183.  
  184. ; typedef unsigned long     DeviceLoopFlags
  185. BitMap                     RECORD    0
  186. baseAddr                 ds.l   1        ; offset: $0 (0)
  187. rowBytes                 ds.w   1        ; offset: $4 (4)
  188. bounds                     ds     Rect    ; offset: $6 (6)
  189. sizeof                     EQU *            ; size:   $E (14)
  190.                         ENDR
  191.  
  192. ; typedef struct BitMap     BitMap
  193. ; typedef BitMap             *BitMapPtr, **BitMapHandle
  194. Cursor                     RECORD    0
  195. data                     ds.l   8        ; offset: $0 (0)
  196. mask                     ds.l   8        ; offset: $20 (32)
  197. hotSpot                     ds     Point    ; offset: $40 (64)
  198. sizeof                     EQU *            ; size:   $44 (68)
  199.                         ENDR
  200.  
  201. ; typedef struct Cursor     Cursor
  202. ; typedef Cursor             *CursPtr, **CursHandle
  203. PenState                 RECORD    0
  204. pnLoc                     ds     Point    ; offset: $0 (0)
  205. pnSize                     ds     Point    ; offset: $4 (4)
  206. pnMode                     ds.w   1        ; offset: $8 (8)
  207. pnPat                     ds     Pattern    ; offset: $A (10)
  208. sizeof                     EQU *            ; size:   $12 (18)
  209.                         ENDR
  210.  
  211. ; typedef struct PenState     PenState
  212. Region                     RECORD    0
  213. rgnSize                     ds.w   1        ; offset: $0 (0)        ;size in bytes
  214. rgnBBox                     ds     Rect    ; offset: $2 (2)        ;enclosing rectangle
  215. sizeof                     EQU *            ; size:   $A (10)
  216.                         ENDR
  217.  
  218. ; typedef struct Region     Region
  219. ; typedef Region             *RgnPtr, **RgnHandle
  220. Picture                 RECORD    0
  221. picSize                     ds.w   1        ; offset: $0 (0)
  222. picFrame                 ds     Rect    ; offset: $2 (2)
  223. sizeof                     EQU *            ; size:   $A (10)
  224.                         ENDR
  225.  
  226. ; typedef struct Picture     Picture
  227. ; typedef Picture             *PicPtr, **PicHandle
  228. Polygon                 RECORD    0
  229. polySize                 ds.w   1        ; offset: $0 (0)
  230. polyBBox                 ds     Rect    ; offset: $2 (2)
  231. polyPoints                 ds     Point    ; offset: $A (10)
  232. sizeof                     EQU *            ; size:   $E (14)
  233.                         ENDR
  234.  
  235. ; typedef struct Polygon     Polygon
  236. ; typedef Polygon             *PolyPtr, **PolyHandle
  237. QDProcs                 RECORD    0
  238. textProc                 ds.l   1        ; offset: $0 (0)
  239. lineProc                 ds.l   1        ; offset: $4 (4)
  240. rectProc                 ds.l   1        ; offset: $8 (8)
  241. rRectProc                 ds.l   1        ; offset: $C (12)
  242. ovalProc                 ds.l   1        ; offset: $10 (16)
  243. arcProc                     ds.l   1        ; offset: $14 (20)
  244. polyProc                 ds.l   1        ; offset: $18 (24)
  245. rgnProc                     ds.l   1        ; offset: $1C (28)
  246. bitsProc                 ds.l   1        ; offset: $20 (32)
  247. commentProc                 ds.l   1        ; offset: $24 (36)
  248. txMeasProc                 ds.l   1        ; offset: $28 (40)
  249. getPicProc                 ds.l   1        ; offset: $2C (44)
  250. putPicProc                 ds.l   1        ; offset: $30 (48)
  251. sizeof                     EQU *            ; size:   $34 (52)
  252.                         ENDR
  253.  
  254. ; typedef struct QDProcs     QDProcs
  255. ; typedef QDProcs             *QDProcsPtr
  256. GrafPort                 RECORD    0
  257. device                     ds.w   1        ; offset: $0 (0)
  258. portBits                 ds     BitMap    ; offset: $2 (2)
  259. portRect                 ds     Rect    ; offset: $10 (16)
  260. visRgn                     ds.l   1        ; offset: $18 (24)
  261. clipRgn                     ds.l   1        ; offset: $1C (28)
  262. bkPat                     ds     Pattern    ; offset: $20 (32)
  263. fillPat                     ds     Pattern    ; offset: $28 (40)
  264. pnLoc                     ds     Point    ; offset: $30 (48)
  265. pnSize                     ds     Point    ; offset: $34 (52)
  266. pnMode                     ds.w   1        ; offset: $38 (56)
  267. pnPat                     ds     Pattern    ; offset: $3A (58)
  268. pnVis                     ds.w   1        ; offset: $42 (66)
  269. txFont                     ds.w   1        ; offset: $44 (68)
  270. txFace                     ds.b   1        ; offset: $46 (70)        ;txFace is unpacked byte but push as short
  271. filler                     ds.b   1        ; offset: $47 (71)
  272. txMode                     ds.w   1        ; offset: $48 (72)
  273. txSize                     ds.w   1        ; offset: $4A (74)
  274. spExtra                     ds.l   1        ; offset: $4C (76)
  275. fgColor                     ds.l   1        ; offset: $50 (80)
  276. bkColor                     ds.l   1        ; offset: $54 (84)
  277. colrBit                     ds.w   1        ; offset: $58 (88)
  278. patStretch                 ds.w   1        ; offset: $5A (90)
  279. picSave                     ds.l   1        ; offset: $5C (92)
  280. rgnSave                     ds.l   1        ; offset: $60 (96)
  281. polySave                 ds.l   1        ; offset: $64 (100)
  282. grafProcs                 ds.l   1        ; offset: $68 (104)
  283. sizeof                     EQU *            ; size:   $6C (108)
  284.                         ENDR
  285.  
  286. ; typedef struct GrafPort     GrafPort
  287. ; typedef GrafPort             *GrafPtr
  288. ;
  289. ; *    This set of definitions "belongs" in Windows.
  290. ; *    But, there is a circularity in the headers where Windows includes Controls and
  291. ; *    Controls includes Windows. To break the circle, the information
  292. ; *    needed by Controls is moved from Windows to Quickdraw.
  293. ; typedef GrafPtr             WindowPtr
  294. ;
  295. ;    Set STRICT_WINDOWS to 1 to make sure your code 
  296. ;    doesn't access the window record directly
  297. ;
  298.     IF &TYPE('STRICT_WINDOWS') = 'UNDEFINED' THEN
  299.     STRICT_WINDOWS: SET 0
  300.     ENDIF
  301.     IF STRICT_WINDOWS  THEN
  302.     ELSE
  303. ; typedef WindowPtr         WindowRef
  304.     ENDIF
  305. ; typedef UInt16             DragConstraint
  306.  
  307. kNoConstraint                    EQU        0
  308. kVerticalConstraint                EQU        1
  309. kHorizontalConstraint            EQU        2
  310.  
  311. ;
  312. ; *    Here ends the list of things that "belong" in Windows.
  313. RGBColor                 RECORD    0
  314. red                         ds.w   1        ; offset: $0 (0)        ;magnitude of red component
  315. green                     ds.w   1        ; offset: $2 (2)        ;magnitude of green component
  316. blue                     ds.w   1        ; offset: $4 (4)        ;magnitude of blue component
  317. sizeof                     EQU *            ; size:   $6 (6)
  318.                         ENDR
  319.  
  320. ; typedef struct RGBColor     RGBColor, *RGBColorPtr, **RGBColorHdl
  321. ColorSpec                 RECORD    0
  322. value                     ds.w   1        ; offset: $0 (0)        ;index or other value
  323. rgb                         ds     RGBColor ; offset: $2 (2)        ;true color
  324. sizeof                     EQU *            ; size:   $8 (8)
  325.                         ENDR
  326.  
  327. ; typedef struct ColorSpec     ColorSpec
  328. ; typedef ColorSpec         *ColorSpecPtr
  329. ; typedef ColorSpec         CSpecArray[1]
  330. xColorSpec                 RECORD    0
  331. value                     ds.w   1        ; offset: $0 (0)        ;index or other value
  332. rgb                         ds     RGBColor ; offset: $2 (2)        ;true color
  333. xalpha                     ds.w   1        ; offset: $8 (8)
  334. sizeof                     EQU *            ; size:   $A (10)
  335.                         ENDR
  336.  
  337. ; typedef struct xColorSpec  xColorSpec
  338. ; typedef xColorSpec         *xColorSpecPtr
  339. ; typedef xColorSpec         xCSpecArray[1]
  340. ColorTable                 RECORD    0
  341. ctSeed                     ds.l   1        ; offset: $0 (0)        ;unique identifier for table
  342. ctFlags                     ds.w   1        ; offset: $4 (4)        ;high bit: 0 = PixMap; 1 = device
  343. ctSize                     ds.w   1        ; offset: $6 (6)        ;number of entries in CTTable
  344. ctTable                     ds.l   2        ; offset: $8 (8)        ;array [0..0] of ColorSpec
  345. sizeof                     EQU *            ; size:   $10 (16)
  346.                         ENDR
  347.  
  348. ; typedef struct ColorTable  ColorTable, *CTabPtr, **CTabHandle
  349. MatchRec                 RECORD    0
  350. red                         ds.w   1        ; offset: $0 (0)
  351. green                     ds.w   1        ; offset: $2 (2)
  352. blue                     ds.w   1        ; offset: $4 (4)
  353. matchData                 ds.l   1        ; offset: $6 (6)
  354. sizeof                     EQU *            ; size:   $A (10)
  355.                         ENDR
  356.  
  357. ; typedef struct MatchRec     MatchRec
  358. PixMap                     RECORD    0
  359. baseAddr                 ds.l   1        ; offset: $0 (0)        ;pointer to pixels
  360. rowBytes                 ds.w   1        ; offset: $4 (4)        ;offset to next line
  361. bounds                     ds     Rect    ; offset: $6 (6)        ;encloses bitmap
  362. pmVersion                 ds.w   1        ; offset: $E (14)        ;pixMap version number
  363. packType                 ds.w   1        ; offset: $10 (16)        ;defines packing format
  364. packSize                 ds.l   1        ; offset: $12 (18)        ;length of pixel data
  365. hRes                     ds.l   1        ; offset: $16 (22)        ;horiz. resolution (ppi)
  366. vRes                     ds.l   1        ; offset: $1A (26)        ;vert. resolution (ppi)
  367. pixelType                 ds.w   1        ; offset: $1E (30)        ;defines pixel type
  368. pixelSize                 ds.w   1        ; offset: $20 (32)        ;# bits in pixel
  369. cmpCount                 ds.w   1        ; offset: $22 (34)        ;# components in pixel
  370. cmpSize                     ds.w   1        ; offset: $24 (36)        ;# bits per component
  371. planeBytes                 ds.l   1        ; offset: $26 (38)        ;offset to next plane
  372. pmTable                     ds.l   1        ; offset: $2A (42)        ;color map for this pixMap
  373. pmReserved                 ds.l   1        ; offset: $2E (46)        ;for future use. MUST BE 0
  374. sizeof                     EQU *            ; size:   $32 (50)
  375.                         ENDR
  376.  
  377. ; typedef struct PixMap     PixMap, *PixMapPtr, **PixMapHandle
  378. PixPat                     RECORD    0
  379. patType                     ds.w   1        ; offset: $0 (0)        ;type of pattern
  380. patMap                     ds.l   1        ; offset: $2 (2)        ;the pattern's pixMap
  381. patData                     ds.l   1        ; offset: $6 (6)        ;pixmap's data
  382. patXData                 ds.l   1        ; offset: $A (10)        ;expanded Pattern data
  383. patXValid                 ds.w   1        ; offset: $E (14)        ;flags whether expanded Pattern valid
  384. patXMap                     ds.l   1        ; offset: $10 (16)        ;Handle to expanded Pattern data
  385. pat1Data                 ds     Pattern    ; offset: $14 (20)        ;old-Style pattern/RGB color
  386. sizeof                     EQU *            ; size:   $1C (28)
  387.                         ENDR
  388.  
  389. ; typedef struct PixPat     PixPat, *PixPatPtr, **PixPatHandle
  390. CCrsr                     RECORD    0
  391. crsrType                 ds.w   1        ; offset: $0 (0)        ;type of cursor
  392. crsrMap                     ds.l   1        ; offset: $2 (2)        ;the cursor's pixmap
  393. crsrData                 ds.l   1        ; offset: $6 (6)        ;cursor's data
  394. crsrXData                 ds.l   1        ; offset: $A (10)        ;expanded cursor data
  395. crsrXValid                 ds.w   1        ; offset: $E (14)        ;depth of expanded data (0 if none)
  396. crsrXHandle                 ds.l   1        ; offset: $10 (16)        ;future use
  397. crsr1Data                 ds.l   8        ; offset: $14 (20)        ;one-bit cursor
  398. crsrMask                 ds.l   8        ; offset: $34 (52)        ;cursor's mask
  399. crsrHotSpot                 ds     Point    ; offset: $54 (84)        ;cursor's hotspot
  400. crsrXTable                 ds.l   1        ; offset: $58 (88)        ;private
  401. crsrID                     ds.l   1        ; offset: $5C (92)        ;private
  402. sizeof                     EQU *            ; size:   $60 (96)
  403.                         ENDR
  404.  
  405. ; typedef struct CCrsr         CCrsr, *CCrsrPtr, **CCrsrHandle
  406.     IF OLDROUTINELOCATIONS  THEN
  407. CIcon                     RECORD    0
  408. iconPMap                 ds     PixMap    ; offset: $0 (0)        ;the icon's pixMap
  409. iconMask                 ds     BitMap    ; offset: $32 (50)        ;the icon's mask
  410. iconBMap                 ds     BitMap    ; offset: $40 (64)        ;the icon's bitMap
  411. iconData                 ds.l   1        ; offset: $4E (78)        ;the icon's data
  412. iconMaskData             ds.w   1        ; offset: $52 (82)        ;icon's mask and BitMap data
  413. sizeof                     EQU *            ; size:   $54 (84)
  414.                         ENDR
  415.  
  416. ; typedef struct CIcon         CIcon, *CIconPtr, **CIconHandle
  417.     ENDIF
  418. GammaTbl                 RECORD    0
  419. gVersion                 ds.w   1        ; offset: $0 (0)        ;gamma version number
  420. gType                     ds.w   1        ; offset: $2 (2)        ;gamma data type
  421. gFormulaSize             ds.w   1        ; offset: $4 (4)        ;Formula data size
  422. gChanCnt                 ds.w   1        ; offset: $6 (6)        ;number of channels of data
  423. gDataCnt                 ds.w   1        ; offset: $8 (8)        ;number of values/channel
  424. gDataWidth                 ds.w   1        ; offset: $A (10)        ;bits/corrected value (data packed to next larger byte size)
  425. gFormulaData             ds.w   1        ; offset: $C (12)        ;data for formulas followed by gamma values
  426. sizeof                     EQU *            ; size:   $E (14)
  427.                         ENDR
  428.  
  429. ; typedef struct GammaTbl     GammaTbl, *GammaTblPtr, **GammaTblHandle
  430. ITab                     RECORD    0
  431. iTabSeed                 ds.l   1        ; offset: $0 (0)        ;copy of CTSeed from source CTable
  432. iTabRes                     ds.w   1        ; offset: $4 (4)        ;bits/channel resolution of iTable
  433. iTTable                     ds.b   1        ; offset: $6 (6)        ;byte colortable index values
  434.                          ORG 8
  435. sizeof                     EQU *            ; size:   $8 (8)
  436.                         ENDR
  437.  
  438. ; typedef struct ITab         ITab, *ITabPtr, **ITabHandle
  439. SProcRec                 RECORD    0
  440. nxtSrch                     ds.l   1        ; offset: $0 (0)        ;SProcHndl Handle to next SProcRec
  441. srchProc                 ds.l   1        ; offset: $4 (4)        ;search procedure proc ptr
  442. sizeof                     EQU *            ; size:   $8 (8)
  443.                         ENDR
  444.  
  445. ; typedef struct SProcRec     SProcRec, *SProcPtr, **SProcHndl
  446. CProcRec                 RECORD    0
  447. nxtComp                     ds.l   1        ; offset: $0 (0)        ;CProcHndl Handle to next CProcRec
  448. compProc                 ds.l   1        ; offset: $4 (4)        ;complement procedure proc ptr
  449. sizeof                     EQU *            ; size:   $8 (8)
  450.                         ENDR
  451.  
  452. ; typedef struct CProcRec     CProcRec, *CProcPtr, **CProcHndl
  453. GDevice                 RECORD    0
  454. gdRefNum                 ds.w   1        ; offset: $0 (0)        ;driver's unit number
  455. gdID                     ds.w   1        ; offset: $2 (2)        ;client ID for search procs
  456. gdType                     ds.w   1        ; offset: $4 (4)        ;fixed/CLUT/direct
  457. gdITable                 ds.l   1        ; offset: $6 (6)        ;Handle to inverse lookup table
  458. gdResPref                 ds.w   1        ; offset: $A (10)        ;preferred resolution of GDITable
  459. gdSearchProc             ds.l   1        ; offset: $C (12)        ;search proc list head
  460. gdCompProc                 ds.l   1        ; offset: $10 (16)        ;complement proc list
  461. gdFlags                     ds.w   1        ; offset: $14 (20)        ;grafDevice flags word
  462. gdPMap                     ds.l   1        ; offset: $16 (22)        ;describing pixMap
  463. gdRefCon                 ds.l   1        ; offset: $1A (26)        ;reference value
  464. gdNextGD                 ds.l   1        ; offset: $1E (30)        ;GDHandle Handle of next gDevice
  465. gdRect                     ds     Rect    ; offset: $22 (34)        ; device's bounds in global coordinates
  466. gdMode                     ds.l   1        ; offset: $2A (42)        ;device's current mode
  467. gdCCBytes                 ds.w   1        ; offset: $2E (46)        ;depth of expanded cursor data
  468. gdCCDepth                 ds.w   1        ; offset: $30 (48)        ;depth of expanded cursor data
  469. gdCCXData                 ds.l   1        ; offset: $32 (50)        ;Handle to cursor's expanded data
  470. gdCCXMask                 ds.l   1        ; offset: $36 (54)        ;Handle to cursor's expanded mask
  471. gdReserved                 ds.l   1        ; offset: $3A (58)        ;future use. MUST BE 0
  472. sizeof                     EQU *            ; size:   $3E (62)
  473.                         ENDR
  474.  
  475. ; typedef struct GDevice     GDevice, *GDPtr, **GDHandle
  476. GrafVars                 RECORD    0
  477. rgbOpColor                 ds     RGBColor ; offset: $0 (0)        ;color for addPin  subPin and average
  478. rgbHiliteColor             ds     RGBColor ; offset: $6 (6)        ;color for hiliting
  479. pmFgColor                 ds.l   1        ; offset: $C (12)        ;palette Handle for foreground color
  480. pmFgIndex                 ds.w   1        ; offset: $10 (16)        ;index value for foreground
  481. pmBkColor                 ds.l   1        ; offset: $12 (18)        ;palette Handle for background color
  482. pmBkIndex                 ds.w   1        ; offset: $16 (22)        ;index value for background
  483. pmFlags                     ds.w   1        ; offset: $18 (24)        ;flags for Palette Manager
  484. sizeof                     EQU *            ; size:   $1A (26)
  485.                         ENDR
  486.  
  487. ; typedef struct GrafVars     GrafVars, *GVarPtr, **GVarHandle
  488. CQDProcs                 RECORD    0
  489. textProc                 ds.l   1        ; offset: $0 (0)
  490. lineProc                 ds.l   1        ; offset: $4 (4)
  491. rectProc                 ds.l   1        ; offset: $8 (8)
  492. rRectProc                 ds.l   1        ; offset: $C (12)
  493. ovalProc                 ds.l   1        ; offset: $10 (16)
  494. arcProc                     ds.l   1        ; offset: $14 (20)
  495. polyProc                 ds.l   1        ; offset: $18 (24)
  496. rgnProc                     ds.l   1        ; offset: $1C (28)
  497. bitsProc                 ds.l   1        ; offset: $20 (32)
  498. commentProc                 ds.l   1        ; offset: $24 (36)
  499. txMeasProc                 ds.l   1        ; offset: $28 (40)
  500. getPicProc                 ds.l   1        ; offset: $2C (44)
  501. putPicProc                 ds.l   1        ; offset: $30 (48)
  502. opcodeProc                 ds.l   1        ; offset: $34 (52)        ;fields added to QDProcs
  503. newProc1                 ds.l   1        ; offset: $38 (56)
  504. newProc2                 ds.l   1        ; offset: $3C (60)
  505. newProc3                 ds.l   1        ; offset: $40 (64)
  506. newProc4                 ds.l   1        ; offset: $44 (68)
  507. newProc5                 ds.l   1        ; offset: $48 (72)
  508. newProc6                 ds.l   1        ; offset: $4C (76)
  509. sizeof                     EQU *            ; size:   $50 (80)
  510.                         ENDR
  511.  
  512. ; typedef struct CQDProcs     CQDProcs, *CQDProcsPtr
  513. CGrafPort                 RECORD    0
  514. device                     ds.w   1        ; offset: $0 (0)
  515. portPixMap                 ds.l   1        ; offset: $2 (2)        ;port's pixel map
  516. portVersion                 ds.w   1        ; offset: $6 (6)        ;high 2 bits always set
  517. grafVars                 ds.l   1        ; offset: $8 (8)        ;Handle to more fields
  518. chExtra                     ds.w   1        ; offset: $C (12)        ;character extra
  519. pnLocHFrac                 ds.w   1        ; offset: $E (14)        ;pen fraction
  520. portRect                 ds     Rect    ; offset: $10 (16)
  521. visRgn                     ds.l   1        ; offset: $18 (24)
  522. clipRgn                     ds.l   1        ; offset: $1C (28)
  523. bkPixPat                 ds.l   1        ; offset: $20 (32)        ;background pattern
  524. rgbFgColor                 ds     RGBColor ; offset: $24 (36)        ;RGB components of fg
  525. rgbBkColor                 ds     RGBColor ; offset: $2A (42)        ;RGB components of bk
  526. pnLoc                     ds     Point    ; offset: $30 (48)
  527. pnSize                     ds     Point    ; offset: $34 (52)
  528. pnMode                     ds.w   1        ; offset: $38 (56)
  529. pnPixPat                 ds.l   1        ; offset: $3A (58)        ;pen's pattern
  530. fillPixPat                 ds.l   1        ; offset: $3E (62)        ;fill pattern
  531. pnVis                     ds.w   1        ; offset: $42 (66)
  532. txFont                     ds.w   1        ; offset: $44 (68)
  533. txFace                     ds.b   1        ; offset: $46 (70)        ;txFace is unpacked byte  push as short
  534. filler                     ds.b   1        ; offset: $47 (71)
  535. txMode                     ds.w   1        ; offset: $48 (72)
  536. txSize                     ds.w   1        ; offset: $4A (74)
  537. spExtra                     ds.l   1        ; offset: $4C (76)
  538. fgColor                     ds.l   1        ; offset: $50 (80)
  539. bkColor                     ds.l   1        ; offset: $54 (84)
  540. colrBit                     ds.w   1        ; offset: $58 (88)
  541. patStretch                 ds.w   1        ; offset: $5A (90)
  542. picSave                     ds.l   1        ; offset: $5C (92)
  543. rgnSave                     ds.l   1        ; offset: $60 (96)
  544. polySave                 ds.l   1        ; offset: $64 (100)
  545. grafProcs                 ds.l   1        ; offset: $68 (104)
  546. sizeof                     EQU *            ; size:   $6C (108)
  547.                         ENDR
  548.  
  549. ; typedef struct CGrafPort     CGrafPort, *CGrafPtr
  550. ; typedef CGrafPtr             CWindowPtr
  551. ReqListRec                 RECORD    0
  552. reqLSize                 ds.w   1        ; offset: $0 (0)        ;request list size
  553. reqLData                 ds.w   1        ; offset: $2 (2)        ;request list data
  554. sizeof                     EQU *            ; size:   $4 (4)
  555.                         ENDR
  556.  
  557. ; typedef struct ReqListRec  ReqListRec
  558. OpenCPicParams             RECORD    0
  559. srcRect                     ds     Rect    ; offset: $0 (0)
  560. hRes                     ds.l   1        ; offset: $8 (8)
  561. vRes                     ds.l   1        ; offset: $C (12)
  562. version                     ds.w   1        ; offset: $10 (16)
  563. reserved1                 ds.w   1        ; offset: $12 (18)
  564. reserved2                 ds.l   1        ; offset: $14 (20)
  565. sizeof                     EQU *            ; size:   $18 (24)
  566.                         ENDR
  567.  
  568. ; typedef struct OpenCPicParams  OpenCPicParams
  569.  
  570. kCursorImageMajorVersion        EQU        $0001
  571. kCursorImageMinorVersion        EQU        $0000
  572.  
  573. CursorImageRec             RECORD    0
  574. majorVersion             ds.w   1        ; offset: $0 (0)
  575. minorVersion             ds.w   1        ; offset: $2 (2)
  576. cursorPixMap             ds.l   1        ; offset: $4 (4)
  577. cursorBitMask             ds.l   1        ; offset: $8 (8)
  578. sizeof                     EQU *            ; size:   $C (12)
  579.                         ENDR
  580.  
  581. ; typedef struct CursorImageRec  CursorImageRec, *CursorImagePtr
  582. QDGlobals                 RECORD    0
  583. privates                 ds.b   76        ; offset: $0 (0)
  584. randSeed                 ds.l   1        ; offset: $4C (76)
  585. screenBits                 ds     BitMap    ; offset: $50 (80)
  586. arrow                     ds     Cursor    ; offset: $5E (94)
  587. dkGray                     ds     Pattern    ; offset: $A2 (162)
  588. ltGray                     ds     Pattern    ; offset: $AA (170)
  589. gray                     ds     Pattern    ; offset: $B2 (178)
  590. black                     ds     Pattern    ; offset: $BA (186)
  591. white                     ds     Pattern    ; offset: $C2 (194)
  592. thePort                     ds.l   1        ; offset: $CA (202)
  593. sizeof                     EQU *            ; size:   $CE (206)
  594.                         ENDR
  595.  
  596. ; typedef struct QDGlobals     QDGlobals, *QDGlobalsPtr, **QDGlobalsHdl
  597.  
  598. ;    Often code written in assembly language is compiled outside of an
  599. ;    application environment.  In such cases, the Quickdraw globals
  600. ;    cannot be access normally (e.g. qd.black).  This kind of code (e.g.
  601. ;    INIT's) usually leaches off the currently install Quickdraw globals
  602. ;    by knowing that 0(a5) points to qd.thePort, as set by InitGraf().
  603. ;    
  604. ;    The record CurrentQDGlobals is defined for use in such circumstances.
  605. ;    It is biased so that thePort is at offset 0.  Below is an example
  606. ;    of using CurrentQDGlobals vs. the old assembly style:
  607. ;    
  608. ;    ; Get address of Quickdraw global's black into A0
  609. ;    
  610. ;        Old non-app way:
  611. ;                MOVE.L    0(A5),A0
  612. ;                LEA        black(A0),A0    ; black was EQU'ed to -16 in QuickEqu.a 
  613. ;    
  614. ;        New non-app way:
  615. ;                MOVE.L    0(A5),A0
  616. ;                LEA        CurrentQDGlobals.black(A0),A0
  617. ;    
  618. ;        New app way:
  619. ;                LEA        qd.black,A0        ; elsewhere: qd  DS    QDGlobals
  620.  
  621. CurrentQDGlobals         RECORD    -202
  622. privates                 ds.b   76        ; offset: $FF36 (-202)
  623. randSeed                 ds.l   1        ; offset: $FF82 (-126)
  624. screenBits                 ds     BitMap    ; offset: $FF86 (-124)
  625. arrow                     ds     Cursor    ; offset: $FF94 (-108)
  626. dkGray                     ds     Pattern    ; offset: $FFD8 (-40)
  627. ltGray                     ds     Pattern    ; offset: $FFE0 (-32)
  628. gray                     ds     Pattern    ; offset: $FFE8 (-24)
  629. black                     ds     Pattern    ; offset: $FFF0 (-16)
  630. white                     ds     Pattern    ; offset: $FFF8 (-8)
  631. thePort                  ds.l   1        ; offset: $0000 (0)
  632. sizeof                     EQU    206        ; size:   $CE   (206)
  633.                         ENDR
  634.  
  635. ;
  636. ; pascal void InitGraf(void *globalPtr)
  637. ;
  638.     IF ¬ GENERATINGCFM THEN
  639.         _InitGraf:    OPWORD    $A86E
  640.     ELSE
  641.         IMPORT_CFM_FUNCTION    InitGraf
  642.     ENDIF
  643.  
  644. ;
  645. ; pascal void OpenPort(GrafPtr port)
  646. ;
  647.     IF ¬ GENERATINGCFM THEN
  648.         _OpenPort:    OPWORD    $A86F
  649.     ELSE
  650.         IMPORT_CFM_FUNCTION    OpenPort
  651.     ENDIF
  652.  
  653. ;
  654. ; pascal void InitPort(GrafPtr port)
  655. ;
  656.     IF ¬ GENERATINGCFM THEN
  657.         _InitPort:    OPWORD    $A86D
  658.     ELSE
  659.         IMPORT_CFM_FUNCTION    InitPort
  660.     ENDIF
  661.  
  662. ;
  663. ; pascal void ClosePort(GrafPtr port)
  664. ;
  665.     IF ¬ GENERATINGCFM THEN
  666.         _ClosePort:    OPWORD    $A87D
  667.     ELSE
  668.         IMPORT_CFM_FUNCTION    ClosePort
  669.     ENDIF
  670.  
  671. ;
  672. ; pascal void SetPort(GrafPtr port)
  673. ;
  674.     IF ¬ GENERATINGCFM THEN
  675.         _SetPort:    OPWORD    $A873
  676.     ELSE
  677.         IMPORT_CFM_FUNCTION    SetPort
  678.     ENDIF
  679.  
  680. ;
  681. ; pascal void GetPort(GrafPtr *port)
  682. ;
  683.     IF ¬ GENERATINGCFM THEN
  684.         _GetPort:    OPWORD    $A874
  685.     ELSE
  686.         IMPORT_CFM_FUNCTION    GetPort
  687.     ENDIF
  688.  
  689. ;
  690. ; pascal void GrafDevice(short device)
  691. ;
  692.     IF ¬ GENERATINGCFM THEN
  693.         _GrafDevice:    OPWORD    $A872
  694.     ELSE
  695.         IMPORT_CFM_FUNCTION    GrafDevice
  696.     ENDIF
  697.  
  698. ;
  699. ; pascal void SetPortBits(const BitMap *bm)
  700. ;
  701.     IF ¬ GENERATINGCFM THEN
  702.         _SetPortBits:    OPWORD    $A875
  703.     ELSE
  704.         IMPORT_CFM_FUNCTION    SetPortBits
  705.     ENDIF
  706.  
  707. ;
  708. ; pascal void PortSize(short width, short height)
  709. ;
  710.     IF ¬ GENERATINGCFM THEN
  711.         _PortSize:    OPWORD    $A876
  712.     ELSE
  713.         IMPORT_CFM_FUNCTION    PortSize
  714.     ENDIF
  715.  
  716. ;
  717. ; pascal void MovePortTo(short leftGlobal, short topGlobal)
  718. ;
  719.     IF ¬ GENERATINGCFM THEN
  720.         _MovePortTo:    OPWORD    $A877
  721.     ELSE
  722.         IMPORT_CFM_FUNCTION    MovePortTo
  723.     ENDIF
  724.  
  725. ;
  726. ; pascal void SetOrigin(short h, short v)
  727. ;
  728.     IF ¬ GENERATINGCFM THEN
  729.         _SetOrigin:    OPWORD    $A878
  730.     ELSE
  731.         IMPORT_CFM_FUNCTION    SetOrigin
  732.     ENDIF
  733.  
  734. ;
  735. ; pascal void SetClip(RgnHandle rgn)
  736. ;
  737.     IF ¬ GENERATINGCFM THEN
  738.         _SetClip:    OPWORD    $A879
  739.     ELSE
  740.         IMPORT_CFM_FUNCTION    SetClip
  741.     ENDIF
  742.  
  743. ;
  744. ; pascal void GetClip(RgnHandle rgn)
  745. ;
  746.     IF ¬ GENERATINGCFM THEN
  747.         _GetClip:    OPWORD    $A87A
  748.     ELSE
  749.         IMPORT_CFM_FUNCTION    GetClip
  750.     ENDIF
  751.  
  752. ;
  753. ; pascal void ClipRect(const Rect *r)
  754. ;
  755.     IF ¬ GENERATINGCFM THEN
  756.         _ClipRect:    OPWORD    $A87B
  757.     ELSE
  758.         IMPORT_CFM_FUNCTION    ClipRect
  759.     ENDIF
  760.  
  761. ;
  762. ; pascal void BackPat(const Pattern *pat)
  763. ;
  764.     IF ¬ GENERATINGCFM THEN
  765.         _BackPat:    OPWORD    $A87C
  766.     ELSE
  767.         IMPORT_CFM_FUNCTION    BackPat
  768.     ENDIF
  769.  
  770. ;
  771. ; pascal void InitCursor(void)
  772. ;
  773.     IF ¬ GENERATINGCFM THEN
  774.         _InitCursor:    OPWORD    $A850
  775.     ELSE
  776.         IMPORT_CFM_FUNCTION    InitCursor
  777.     ENDIF
  778.  
  779. ;
  780. ; pascal void SetCursor(const Cursor *crsr)
  781. ;
  782.     IF ¬ GENERATINGCFM THEN
  783.         _SetCursor:    OPWORD    $A851
  784.     ELSE
  785.         IMPORT_CFM_FUNCTION    SetCursor
  786.     ENDIF
  787.  
  788. ;
  789. ; pascal void HideCursor(void)
  790. ;
  791.     IF ¬ GENERATINGCFM THEN
  792.         _HideCursor:    OPWORD    $A852
  793.     ELSE
  794.         IMPORT_CFM_FUNCTION    HideCursor
  795.     ENDIF
  796.  
  797. ;
  798. ; pascal void ShowCursor(void)
  799. ;
  800.     IF ¬ GENERATINGCFM THEN
  801.         _ShowCursor:    OPWORD    $A853
  802.     ELSE
  803.         IMPORT_CFM_FUNCTION    ShowCursor
  804.     ENDIF
  805.  
  806. ;
  807. ; pascal void ObscureCursor(void)
  808. ;
  809.     IF ¬ GENERATINGCFM THEN
  810.         _ObscureCursor:    OPWORD    $A856
  811.     ELSE
  812.         IMPORT_CFM_FUNCTION    ObscureCursor
  813.     ENDIF
  814.  
  815. ;
  816. ; pascal void HidePen(void)
  817. ;
  818.     IF ¬ GENERATINGCFM THEN
  819.         _HidePen:    OPWORD    $A896
  820.     ELSE
  821.         IMPORT_CFM_FUNCTION    HidePen
  822.     ENDIF
  823.  
  824. ;
  825. ; pascal void ShowPen(void)
  826. ;
  827.     IF ¬ GENERATINGCFM THEN
  828.         _ShowPen:    OPWORD    $A897
  829.     ELSE
  830.         IMPORT_CFM_FUNCTION    ShowPen
  831.     ENDIF
  832.  
  833. ;
  834. ; pascal void GetPen(Point *pt)
  835. ;
  836.     IF ¬ GENERATINGCFM THEN
  837.         _GetPen:    OPWORD    $A89A
  838.     ELSE
  839.         IMPORT_CFM_FUNCTION    GetPen
  840.     ENDIF
  841.  
  842. ;
  843. ; pascal void GetPenState(PenState *pnState)
  844. ;
  845.     IF ¬ GENERATINGCFM THEN
  846.         _GetPenState:    OPWORD    $A898
  847.     ELSE
  848.         IMPORT_CFM_FUNCTION    GetPenState
  849.     ENDIF
  850.  
  851. ;
  852. ; pascal void SetPenState(const PenState *pnState)
  853. ;
  854.     IF ¬ GENERATINGCFM THEN
  855.         _SetPenState:    OPWORD    $A899
  856.     ELSE
  857.         IMPORT_CFM_FUNCTION    SetPenState
  858.     ENDIF
  859.  
  860. ;
  861. ; pascal void PenSize(short width, short height)
  862. ;
  863.     IF ¬ GENERATINGCFM THEN
  864.         _PenSize:    OPWORD    $A89B
  865.     ELSE
  866.         IMPORT_CFM_FUNCTION    PenSize
  867.     ENDIF
  868.  
  869. ;
  870. ; pascal void PenMode(short mode)
  871. ;
  872.     IF ¬ GENERATINGCFM THEN
  873.         _PenMode:    OPWORD    $A89C
  874.     ELSE
  875.         IMPORT_CFM_FUNCTION    PenMode
  876.     ENDIF
  877.  
  878. ;
  879. ; pascal void PenPat(const Pattern *pat)
  880. ;
  881.     IF ¬ GENERATINGCFM THEN
  882.         _PenPat:    OPWORD    $A89D
  883.     ELSE
  884.         IMPORT_CFM_FUNCTION    PenPat
  885.     ENDIF
  886.  
  887. ;
  888. ; pascal void PenNormal(void)
  889. ;
  890.     IF ¬ GENERATINGCFM THEN
  891.         _PenNormal:    OPWORD    $A89E
  892.     ELSE
  893.         IMPORT_CFM_FUNCTION    PenNormal
  894.     ENDIF
  895.  
  896. ;
  897. ; pascal void MoveTo(short h, short v)
  898. ;
  899.     IF ¬ GENERATINGCFM THEN
  900.         _MoveTo:    OPWORD    $A893
  901.     ELSE
  902.         IMPORT_CFM_FUNCTION    MoveTo
  903.     ENDIF
  904.  
  905. ;
  906. ; pascal void Move(short dh, short dv)
  907. ;
  908.     IF ¬ GENERATINGCFM THEN
  909.         _Move:    OPWORD    $A894
  910.     ELSE
  911.         IMPORT_CFM_FUNCTION    Move
  912.     ENDIF
  913.  
  914. ;
  915. ; pascal void LineTo(short h, short v)
  916. ;
  917.     IF ¬ GENERATINGCFM THEN
  918.         _LineTo:    OPWORD    $A891
  919.     ELSE
  920.         IMPORT_CFM_FUNCTION    LineTo
  921.     ENDIF
  922.  
  923. ;
  924. ; pascal void Line(short dh, short dv)
  925. ;
  926.     IF ¬ GENERATINGCFM THEN
  927.         _Line:    OPWORD    $A892
  928.     ELSE
  929.         IMPORT_CFM_FUNCTION    Line
  930.     ENDIF
  931.  
  932. ;
  933. ; pascal void ForeColor(long color)
  934. ;
  935.     IF ¬ GENERATINGCFM THEN
  936.         _ForeColor:    OPWORD    $A862
  937.     ELSE
  938.         IMPORT_CFM_FUNCTION    ForeColor
  939.     ENDIF
  940.  
  941. ;
  942. ; pascal void BackColor(long color)
  943. ;
  944.     IF ¬ GENERATINGCFM THEN
  945.         _BackColor:    OPWORD    $A863
  946.     ELSE
  947.         IMPORT_CFM_FUNCTION    BackColor
  948.     ENDIF
  949.  
  950. ;
  951. ; pascal void ColorBit(short whichBit)
  952. ;
  953.     IF ¬ GENERATINGCFM THEN
  954.         _ColorBit:    OPWORD    $A864
  955.     ELSE
  956.         IMPORT_CFM_FUNCTION    ColorBit
  957.     ENDIF
  958.  
  959. ;
  960. ; pascal void SetRect(Rect *r, short left, short top, short right, short bottom)
  961. ;
  962.     IF ¬ GENERATINGCFM THEN
  963.         _SetRect:    OPWORD    $A8A7
  964.     ELSE
  965.         IMPORT_CFM_FUNCTION    SetRect
  966.     ENDIF
  967.  
  968. ;
  969. ; pascal void OffsetRect(Rect *r, short dh, short dv)
  970. ;
  971.     IF ¬ GENERATINGCFM THEN
  972.         _OffsetRect:    OPWORD    $A8A8
  973.     ELSE
  974.         IMPORT_CFM_FUNCTION    OffsetRect
  975.     ENDIF
  976.  
  977. ;
  978. ; pascal void InsetRect(Rect *r, short dh, short dv)
  979. ;
  980.     IF ¬ GENERATINGCFM THEN
  981.         _InsetRect:    OPWORD    $A8A9
  982.     ELSE
  983.         IMPORT_CFM_FUNCTION    InsetRect
  984.     ENDIF
  985.  
  986. ;
  987. ; pascal Boolean SectRect(const Rect *src1, const Rect *src2, Rect *dstRect)
  988. ;
  989.     IF ¬ GENERATINGCFM THEN
  990.         _SectRect:    OPWORD    $A8AA
  991.     ELSE
  992.         IMPORT_CFM_FUNCTION    SectRect
  993.     ENDIF
  994.  
  995. ;
  996. ; pascal void UnionRect(const Rect *src1, const Rect *src2, Rect *dstRect)
  997. ;
  998.     IF ¬ GENERATINGCFM THEN
  999.         _UnionRect:    OPWORD    $A8AB
  1000.     ELSE
  1001.         IMPORT_CFM_FUNCTION    UnionRect
  1002.     ENDIF
  1003.  
  1004. ;
  1005. ; pascal Boolean EqualRect(const Rect *rect1, const Rect *rect2)
  1006. ;
  1007.     IF ¬ GENERATINGCFM THEN
  1008.         _EqualRect:    OPWORD    $A8A6
  1009.     ELSE
  1010.         IMPORT_CFM_FUNCTION    EqualRect
  1011.     ENDIF
  1012.  
  1013. ;
  1014. ; pascal Boolean EmptyRect(const Rect *r)
  1015. ;
  1016.     IF ¬ GENERATINGCFM THEN
  1017.         _EmptyRect:    OPWORD    $A8AE
  1018.     ELSE
  1019.         IMPORT_CFM_FUNCTION    EmptyRect
  1020.     ENDIF
  1021.  
  1022. ;
  1023. ; pascal void FrameRect(const Rect *r)
  1024. ;
  1025.     IF ¬ GENERATINGCFM THEN
  1026.         _FrameRect:    OPWORD    $A8A1
  1027.     ELSE
  1028.         IMPORT_CFM_FUNCTION    FrameRect
  1029.     ENDIF
  1030.  
  1031. ;
  1032. ; pascal void PaintRect(const Rect *r)
  1033. ;
  1034.     IF ¬ GENERATINGCFM THEN
  1035.         _PaintRect:    OPWORD    $A8A2
  1036.     ELSE
  1037.         IMPORT_CFM_FUNCTION    PaintRect
  1038.     ENDIF
  1039.  
  1040. ;
  1041. ; pascal void EraseRect(const Rect *r)
  1042. ;
  1043.     IF ¬ GENERATINGCFM THEN
  1044.         _EraseRect:    OPWORD    $A8A3
  1045.     ELSE
  1046.         IMPORT_CFM_FUNCTION    EraseRect
  1047.     ENDIF
  1048.  
  1049. ;
  1050. ; pascal void InvertRect(const Rect *r)
  1051. ;
  1052.     IF ¬ GENERATINGCFM THEN
  1053.         _InvertRect:    OPWORD    $A8A4
  1054.     ELSE
  1055.         IMPORT_CFM_FUNCTION    InvertRect
  1056.     ENDIF
  1057.  
  1058. ;
  1059. ; pascal void FillRect(const Rect *r, const Pattern *pat)
  1060. ;
  1061.     IF ¬ GENERATINGCFM THEN
  1062.         _FillRect:    OPWORD    $A8A5
  1063.     ELSE
  1064.         IMPORT_CFM_FUNCTION    FillRect
  1065.     ENDIF
  1066.  
  1067. ;
  1068. ; pascal void FrameOval(const Rect *r)
  1069. ;
  1070.     IF ¬ GENERATINGCFM THEN
  1071.         _FrameOval:    OPWORD    $A8B7
  1072.     ELSE
  1073.         IMPORT_CFM_FUNCTION    FrameOval
  1074.     ENDIF
  1075.  
  1076. ;
  1077. ; pascal void PaintOval(const Rect *r)
  1078. ;
  1079.     IF ¬ GENERATINGCFM THEN
  1080.         _PaintOval:    OPWORD    $A8B8
  1081.     ELSE
  1082.         IMPORT_CFM_FUNCTION    PaintOval
  1083.     ENDIF
  1084.  
  1085. ;
  1086. ; pascal void EraseOval(const Rect *r)
  1087. ;
  1088.     IF ¬ GENERATINGCFM THEN
  1089.         _EraseOval:    OPWORD    $A8B9
  1090.     ELSE
  1091.         IMPORT_CFM_FUNCTION    EraseOval
  1092.     ENDIF
  1093.  
  1094. ;
  1095. ; pascal void InvertOval(const Rect *r)
  1096. ;
  1097.     IF ¬ GENERATINGCFM THEN
  1098.         _InvertOval:    OPWORD    $A8BA
  1099.     ELSE
  1100.         IMPORT_CFM_FUNCTION    InvertOval
  1101.     ENDIF
  1102.  
  1103. ;
  1104. ; pascal void FillOval(const Rect *r, const Pattern *pat)
  1105. ;
  1106.     IF ¬ GENERATINGCFM THEN
  1107.         _FillOval:    OPWORD    $A8BB
  1108.     ELSE
  1109.         IMPORT_CFM_FUNCTION    FillOval
  1110.     ENDIF
  1111.  
  1112. ;
  1113. ; pascal void FrameRoundRect(const Rect *r, short ovalWidth, short ovalHeight)
  1114. ;
  1115.     IF ¬ GENERATINGCFM THEN
  1116.         _FrameRoundRect:    OPWORD    $A8B0
  1117.     ELSE
  1118.         IMPORT_CFM_FUNCTION    FrameRoundRect
  1119.     ENDIF
  1120.  
  1121. ;
  1122. ; pascal void PaintRoundRect(const Rect *r, short ovalWidth, short ovalHeight)
  1123. ;
  1124.     IF ¬ GENERATINGCFM THEN
  1125.         _PaintRoundRect:    OPWORD    $A8B1
  1126.     ELSE
  1127.         IMPORT_CFM_FUNCTION    PaintRoundRect
  1128.     ENDIF
  1129.  
  1130. ;
  1131. ; pascal void EraseRoundRect(const Rect *r, short ovalWidth, short ovalHeight)
  1132. ;
  1133.     IF ¬ GENERATINGCFM THEN
  1134.         _EraseRoundRect:    OPWORD    $A8B2
  1135.     ELSE
  1136.         IMPORT_CFM_FUNCTION    EraseRoundRect
  1137.     ENDIF
  1138.  
  1139. ;
  1140. ; pascal void InvertRoundRect(const Rect *r, short ovalWidth, short ovalHeight)
  1141. ;
  1142.     IF ¬ GENERATINGCFM THEN
  1143.         _InvertRoundRect:    OPWORD    $A8B3
  1144.     ELSE
  1145.         IMPORT_CFM_FUNCTION    InvertRoundRect
  1146.     ENDIF
  1147.  
  1148. ;
  1149. ; pascal void FillRoundRect(const Rect *r, short ovalWidth, short ovalHeight, const Pattern *pat)
  1150. ;
  1151.     IF ¬ GENERATINGCFM THEN
  1152.         _FillRoundRect:    OPWORD    $A8B4
  1153.     ELSE
  1154.         IMPORT_CFM_FUNCTION    FillRoundRect
  1155.     ENDIF
  1156.  
  1157. ;
  1158. ; pascal void FrameArc(const Rect *r, short startAngle, short arcAngle)
  1159. ;
  1160.     IF ¬ GENERATINGCFM THEN
  1161.         _FrameArc:    OPWORD    $A8BE
  1162.     ELSE
  1163.         IMPORT_CFM_FUNCTION    FrameArc
  1164.     ENDIF
  1165.  
  1166. ;
  1167. ; pascal void PaintArc(const Rect *r, short startAngle, short arcAngle)
  1168. ;
  1169.     IF ¬ GENERATINGCFM THEN
  1170.         _PaintArc:    OPWORD    $A8BF
  1171.     ELSE
  1172.         IMPORT_CFM_FUNCTION    PaintArc
  1173.     ENDIF
  1174.  
  1175. ;
  1176. ; pascal void EraseArc(const Rect *r, short startAngle, short arcAngle)
  1177. ;
  1178.     IF ¬ GENERATINGCFM THEN
  1179.         _EraseArc:    OPWORD    $A8C0
  1180.     ELSE
  1181.         IMPORT_CFM_FUNCTION    EraseArc
  1182.     ENDIF
  1183.  
  1184. ;
  1185. ; pascal void InvertArc(const Rect *r, short startAngle, short arcAngle)
  1186. ;
  1187.     IF ¬ GENERATINGCFM THEN
  1188.         _InvertArc:    OPWORD    $A8C1
  1189.     ELSE
  1190.         IMPORT_CFM_FUNCTION    InvertArc
  1191.     ENDIF
  1192.  
  1193. ;
  1194. ; pascal void FillArc(const Rect *r, short startAngle, short arcAngle, const Pattern *pat)
  1195. ;
  1196.     IF ¬ GENERATINGCFM THEN
  1197.         _FillArc:    OPWORD    $A8C2
  1198.     ELSE
  1199.         IMPORT_CFM_FUNCTION    FillArc
  1200.     ENDIF
  1201.  
  1202. ;
  1203. ; pascal RgnHandle NewRgn(void)
  1204. ;
  1205.     IF ¬ GENERATINGCFM THEN
  1206.         _NewRgn:    OPWORD    $A8D8
  1207.     ELSE
  1208.         IMPORT_CFM_FUNCTION    NewRgn
  1209.     ENDIF
  1210.  
  1211. ;
  1212. ; pascal void OpenRgn(void)
  1213. ;
  1214.     IF ¬ GENERATINGCFM THEN
  1215.         _OpenRgn:    OPWORD    $A8DA
  1216.     ELSE
  1217.         IMPORT_CFM_FUNCTION    OpenRgn
  1218.     ENDIF
  1219.  
  1220. ;
  1221. ; pascal void CloseRgn(RgnHandle dstRgn)
  1222. ;
  1223.     IF ¬ GENERATINGCFM THEN
  1224.         _CloseRgn:    OPWORD    $A8DB
  1225.     ELSE
  1226.         IMPORT_CFM_FUNCTION    CloseRgn
  1227.     ENDIF
  1228.  
  1229.     IF ¬ SystemSevenOrLater  THEN
  1230. ;
  1231. ; pascal OSErr BitMapToRegionGlue(RgnHandle region, const BitMap *bMap)
  1232. ;
  1233.     IF GENERATINGCFM THEN
  1234.         IMPORT_CFM_FUNCTION    BitMapToRegionGlue
  1235.     ENDIF
  1236.  
  1237.     ENDIF
  1238. ;
  1239. ; pascal OSErr BitMapToRegion(RgnHandle region, const BitMap *bMap)
  1240. ;
  1241.     IF ¬ GENERATINGCFM THEN
  1242.         _BitMapToRegion:    OPWORD    $A8D7
  1243.     ELSE
  1244.         IMPORT_CFM_FUNCTION    BitMapToRegion
  1245.     ENDIF
  1246.  
  1247. ;
  1248. ; pascal void DisposeRgn(RgnHandle rgn)
  1249. ;
  1250.     IF ¬ GENERATINGCFM THEN
  1251.         _DisposeRgn:    OPWORD    $A8D9
  1252.     ELSE
  1253.         IMPORT_CFM_FUNCTION    DisposeRgn
  1254.     ENDIF
  1255.  
  1256. ;
  1257. ; pascal void CopyRgn(RgnHandle srcRgn, RgnHandle dstRgn)
  1258. ;
  1259.     IF ¬ GENERATINGCFM THEN
  1260.         _CopyRgn:    OPWORD    $A8DC
  1261.     ELSE
  1262.         IMPORT_CFM_FUNCTION    CopyRgn
  1263.     ENDIF
  1264.  
  1265. ;
  1266. ; pascal void SetEmptyRgn(RgnHandle rgn)
  1267. ;
  1268.     IF ¬ GENERATINGCFM THEN
  1269.         _SetEmptyRgn:    OPWORD    $A8DD
  1270.     ELSE
  1271.         IMPORT_CFM_FUNCTION    SetEmptyRgn
  1272.     ENDIF
  1273.  
  1274. ;
  1275. ; pascal void SetRectRgn(RgnHandle rgn, short left, short top, short right, short bottom)
  1276. ;
  1277.     IF ¬ GENERATINGCFM THEN
  1278.         _SetRectRgn:    OPWORD    $A8DE
  1279.     ELSE
  1280.         IMPORT_CFM_FUNCTION    SetRectRgn
  1281.     ENDIF
  1282.  
  1283. ;
  1284. ; pascal void RectRgn(RgnHandle rgn, const Rect *r)
  1285. ;
  1286.     IF ¬ GENERATINGCFM THEN
  1287.         _RectRgn:    OPWORD    $A8DF
  1288.     ELSE
  1289.         IMPORT_CFM_FUNCTION    RectRgn
  1290.     ENDIF
  1291.  
  1292. ;
  1293. ; pascal void OffsetRgn(RgnHandle rgn, short dh, short dv)
  1294. ;
  1295.     IF ¬ GENERATINGCFM THEN
  1296.         _OffsetRgn:    OPWORD    $A8E0
  1297.     ELSE
  1298.         IMPORT_CFM_FUNCTION    OffsetRgn
  1299.     ENDIF
  1300.  
  1301. ;
  1302. ; pascal void InsetRgn(RgnHandle rgn, short dh, short dv)
  1303. ;
  1304.     IF ¬ GENERATINGCFM THEN
  1305.         _InsetRgn:    OPWORD    $A8E1
  1306.     ELSE
  1307.         IMPORT_CFM_FUNCTION    InsetRgn
  1308.     ENDIF
  1309.  
  1310. ;
  1311. ; pascal void SectRgn(RgnHandle srcRgnA, RgnHandle srcRgnB, RgnHandle dstRgn)
  1312. ;
  1313.     IF ¬ GENERATINGCFM THEN
  1314.         _SectRgn:    OPWORD    $A8E4
  1315.     ELSE
  1316.         IMPORT_CFM_FUNCTION    SectRgn
  1317.     ENDIF
  1318.  
  1319. ;
  1320. ; pascal void UnionRgn(RgnHandle srcRgnA, RgnHandle srcRgnB, RgnHandle dstRgn)
  1321. ;
  1322.     IF ¬ GENERATINGCFM THEN
  1323.         _UnionRgn:    OPWORD    $A8E5
  1324.     ELSE
  1325.         IMPORT_CFM_FUNCTION    UnionRgn
  1326.     ENDIF
  1327.  
  1328. ;
  1329. ; pascal void DiffRgn(RgnHandle srcRgnA, RgnHandle srcRgnB, RgnHandle dstRgn)
  1330. ;
  1331.     IF ¬ GENERATINGCFM THEN
  1332.         _DiffRgn:    OPWORD    $A8E6
  1333.     ELSE
  1334.         IMPORT_CFM_FUNCTION    DiffRgn
  1335.     ENDIF
  1336.  
  1337. ;
  1338. ; pascal void XorRgn(RgnHandle srcRgnA, RgnHandle srcRgnB, RgnHandle dstRgn)
  1339. ;
  1340.     IF ¬ GENERATINGCFM THEN
  1341.         _XorRgn:    OPWORD    $A8E7
  1342.     ELSE
  1343.         IMPORT_CFM_FUNCTION    XorRgn
  1344.     ENDIF
  1345.  
  1346. ;
  1347. ; pascal Boolean RectInRgn(const Rect *r, RgnHandle rgn)
  1348. ;
  1349.     IF ¬ GENERATINGCFM THEN
  1350.         _RectInRgn:    OPWORD    $A8E9
  1351.     ELSE
  1352.         IMPORT_CFM_FUNCTION    RectInRgn
  1353.     ENDIF
  1354.  
  1355. ;
  1356. ; pascal Boolean EqualRgn(RgnHandle rgnA, RgnHandle rgnB)
  1357. ;
  1358.     IF ¬ GENERATINGCFM THEN
  1359.         _EqualRgn:    OPWORD    $A8E3
  1360.     ELSE
  1361.         IMPORT_CFM_FUNCTION    EqualRgn
  1362.     ENDIF
  1363.  
  1364. ;
  1365. ; pascal Boolean EmptyRgn(RgnHandle rgn)
  1366. ;
  1367.     IF ¬ GENERATINGCFM THEN
  1368.         _EmptyRgn:    OPWORD    $A8E2
  1369.     ELSE
  1370.         IMPORT_CFM_FUNCTION    EmptyRgn
  1371.     ENDIF
  1372.  
  1373. ;
  1374. ; pascal void FrameRgn(RgnHandle rgn)
  1375. ;
  1376.     IF ¬ GENERATINGCFM THEN
  1377.         _FrameRgn:    OPWORD    $A8D2
  1378.     ELSE
  1379.         IMPORT_CFM_FUNCTION    FrameRgn
  1380.     ENDIF
  1381.  
  1382. ;
  1383. ; pascal void PaintRgn(RgnHandle rgn)
  1384. ;
  1385.     IF ¬ GENERATINGCFM THEN
  1386.         _PaintRgn:    OPWORD    $A8D3
  1387.     ELSE
  1388.         IMPORT_CFM_FUNCTION    PaintRgn
  1389.     ENDIF
  1390.  
  1391. ;
  1392. ; pascal void EraseRgn(RgnHandle rgn)
  1393. ;
  1394.     IF ¬ GENERATINGCFM THEN
  1395.         _EraseRgn:    OPWORD    $A8D4
  1396.     ELSE
  1397.         IMPORT_CFM_FUNCTION    EraseRgn
  1398.     ENDIF
  1399.  
  1400. ;
  1401. ; pascal void InvertRgn(RgnHandle rgn)
  1402. ;
  1403.     IF ¬ GENERATINGCFM THEN
  1404.         _InvertRgn:    OPWORD    $A8D5
  1405.     ELSE
  1406.         IMPORT_CFM_FUNCTION    InvertRgn
  1407.     ENDIF
  1408.  
  1409. ;
  1410. ; pascal void FillRgn(RgnHandle rgn, const Pattern *pat)
  1411. ;
  1412.     IF ¬ GENERATINGCFM THEN
  1413.         _FillRgn:    OPWORD    $A8D6
  1414.     ELSE
  1415.         IMPORT_CFM_FUNCTION    FillRgn
  1416.     ENDIF
  1417.  
  1418. ;
  1419. ; pascal void ScrollRect(const Rect *r, short dh, short dv, RgnHandle updateRgn)
  1420. ;
  1421.     IF ¬ GENERATINGCFM THEN
  1422.         _ScrollRect:    OPWORD    $A8EF
  1423.     ELSE
  1424.         IMPORT_CFM_FUNCTION    ScrollRect
  1425.     ENDIF
  1426.  
  1427. ;
  1428. ; pascal void CopyBits(const BitMap *srcBits, const BitMap *dstBits, const Rect *srcRect, const Rect *dstRect, short mode, RgnHandle maskRgn)
  1429. ;
  1430.     IF ¬ GENERATINGCFM THEN
  1431.         _CopyBits:    OPWORD    $A8EC
  1432.     ELSE
  1433.         IMPORT_CFM_FUNCTION    CopyBits
  1434.     ENDIF
  1435.  
  1436. ;
  1437. ; pascal void SeedFill(const void *srcPtr, void *dstPtr, short srcRow, short dstRow, short height, short words, short seedH, short seedV)
  1438. ;
  1439.     IF ¬ GENERATINGCFM THEN
  1440.         _SeedFill:    OPWORD    $A839
  1441.     ELSE
  1442.         IMPORT_CFM_FUNCTION    SeedFill
  1443.     ENDIF
  1444.  
  1445. ;
  1446. ; pascal void CalcMask(const void *srcPtr, void *dstPtr, short srcRow, short dstRow, short height, short words)
  1447. ;
  1448.     IF ¬ GENERATINGCFM THEN
  1449.         _CalcMask:    OPWORD    $A838
  1450.     ELSE
  1451.         IMPORT_CFM_FUNCTION    CalcMask
  1452.     ENDIF
  1453.  
  1454. ;
  1455. ; pascal void CopyMask(const BitMap *srcBits, const BitMap *maskBits, const BitMap *dstBits, const Rect *srcRect, const Rect *maskRect, const Rect *dstRect)
  1456. ;
  1457.     IF ¬ GENERATINGCFM THEN
  1458.         _CopyMask:    OPWORD    $A817
  1459.     ELSE
  1460.         IMPORT_CFM_FUNCTION    CopyMask
  1461.     ENDIF
  1462.  
  1463. ;
  1464. ; pascal PicHandle OpenPicture(const Rect *picFrame)
  1465. ;
  1466.     IF ¬ GENERATINGCFM THEN
  1467.         _OpenPicture:    OPWORD    $A8F3
  1468.     ELSE
  1469.         IMPORT_CFM_FUNCTION    OpenPicture
  1470.     ENDIF
  1471.  
  1472. ;
  1473. ; pascal void PicComment(short kind, short dataSize, Handle dataHandle)
  1474. ;
  1475.     IF ¬ GENERATINGCFM THEN
  1476.         _PicComment:    OPWORD    $A8F2
  1477.     ELSE
  1478.         IMPORT_CFM_FUNCTION    PicComment
  1479.     ENDIF
  1480.  
  1481. ;
  1482. ; pascal void ClosePicture(void)
  1483. ;
  1484.     IF ¬ GENERATINGCFM THEN
  1485.         _ClosePicture:    OPWORD    $A8F4
  1486.     ELSE
  1487.         IMPORT_CFM_FUNCTION    ClosePicture
  1488.     ENDIF
  1489.  
  1490. ;
  1491. ; pascal void DrawPicture(PicHandle myPicture, const Rect *dstRect)
  1492. ;
  1493.     IF ¬ GENERATINGCFM THEN
  1494.         _DrawPicture:    OPWORD    $A8F6
  1495.     ELSE
  1496.         IMPORT_CFM_FUNCTION    DrawPicture
  1497.     ENDIF
  1498.  
  1499. ;
  1500. ; pascal void KillPicture(PicHandle myPicture)
  1501. ;
  1502.     IF ¬ GENERATINGCFM THEN
  1503.         _KillPicture:    OPWORD    $A8F5
  1504.     ELSE
  1505.         IMPORT_CFM_FUNCTION    KillPicture
  1506.     ENDIF
  1507.  
  1508. ;
  1509. ; pascal PolyHandle OpenPoly(void)
  1510. ;
  1511.     IF ¬ GENERATINGCFM THEN
  1512.         _OpenPoly:    OPWORD    $A8CB
  1513.     ELSE
  1514.         IMPORT_CFM_FUNCTION    OpenPoly
  1515.     ENDIF
  1516.  
  1517. ;
  1518. ; pascal void ClosePoly(void)
  1519. ;
  1520.     IF ¬ GENERATINGCFM THEN
  1521.         _ClosePoly:    OPWORD    $A8CC
  1522.     ELSE
  1523.         IMPORT_CFM_FUNCTION    ClosePoly
  1524.     ENDIF
  1525.  
  1526. ;
  1527. ; pascal void KillPoly(PolyHandle poly)
  1528. ;
  1529.     IF ¬ GENERATINGCFM THEN
  1530.         _KillPoly:    OPWORD    $A8CD
  1531.     ELSE
  1532.         IMPORT_CFM_FUNCTION    KillPoly
  1533.     ENDIF
  1534.  
  1535. ;
  1536. ; pascal void OffsetPoly(PolyHandle poly, short dh, short dv)
  1537. ;
  1538.     IF ¬ GENERATINGCFM THEN
  1539.         _OffsetPoly:    OPWORD    $A8CE
  1540.     ELSE
  1541.         IMPORT_CFM_FUNCTION    OffsetPoly
  1542.     ENDIF
  1543.  
  1544. ;
  1545. ; pascal void FramePoly(PolyHandle poly)
  1546. ;
  1547.     IF ¬ GENERATINGCFM THEN
  1548.         _FramePoly:    OPWORD    $A8C6
  1549.     ELSE
  1550.         IMPORT_CFM_FUNCTION    FramePoly
  1551.     ENDIF
  1552.  
  1553. ;
  1554. ; pascal void PaintPoly(PolyHandle poly)
  1555. ;
  1556.     IF ¬ GENERATINGCFM THEN
  1557.         _PaintPoly:    OPWORD    $A8C7
  1558.     ELSE
  1559.         IMPORT_CFM_FUNCTION    PaintPoly
  1560.     ENDIF
  1561.  
  1562. ;
  1563. ; pascal void ErasePoly(PolyHandle poly)
  1564. ;
  1565.     IF ¬ GENERATINGCFM THEN
  1566.         _ErasePoly:    OPWORD    $A8C8
  1567.     ELSE
  1568.         IMPORT_CFM_FUNCTION    ErasePoly
  1569.     ENDIF
  1570.  
  1571. ;
  1572. ; pascal void InvertPoly(PolyHandle poly)
  1573. ;
  1574.     IF ¬ GENERATINGCFM THEN
  1575.         _InvertPoly:    OPWORD    $A8C9
  1576.     ELSE
  1577.         IMPORT_CFM_FUNCTION    InvertPoly
  1578.     ENDIF
  1579.  
  1580. ;
  1581. ; pascal void FillPoly(PolyHandle poly, const Pattern *pat)
  1582. ;
  1583.     IF ¬ GENERATINGCFM THEN
  1584.         _FillPoly:    OPWORD    $A8CA
  1585.     ELSE
  1586.         IMPORT_CFM_FUNCTION    FillPoly
  1587.     ENDIF
  1588.  
  1589. ;
  1590. ; pascal void SetPt(Point *pt, short h, short v)
  1591. ;
  1592.     IF ¬ GENERATINGCFM THEN
  1593.         _SetPt:    OPWORD    $A880
  1594.     ELSE
  1595.         IMPORT_CFM_FUNCTION    SetPt
  1596.     ENDIF
  1597.  
  1598. ;
  1599. ; pascal void LocalToGlobal(Point *pt)
  1600. ;
  1601.     IF ¬ GENERATINGCFM THEN
  1602.         _LocalToGlobal:    OPWORD    $A870
  1603.     ELSE
  1604.         IMPORT_CFM_FUNCTION    LocalToGlobal
  1605.     ENDIF
  1606.  
  1607. ;
  1608. ; pascal void GlobalToLocal(Point *pt)
  1609. ;
  1610.     IF ¬ GENERATINGCFM THEN
  1611.         _GlobalToLocal:    OPWORD    $A871
  1612.     ELSE
  1613.         IMPORT_CFM_FUNCTION    GlobalToLocal
  1614.     ENDIF
  1615.  
  1616. ;
  1617. ; pascal short Random(void)
  1618. ;
  1619.     IF ¬ GENERATINGCFM THEN
  1620.         _Random:    OPWORD    $A861
  1621.     ELSE
  1622.         IMPORT_CFM_FUNCTION    Random
  1623.     ENDIF
  1624.  
  1625. ;
  1626. ; pascal void StuffHex(void *thingPtr, ConstStr255Param s)
  1627. ;
  1628.     IF ¬ GENERATINGCFM THEN
  1629.         _StuffHex:    OPWORD    $A866
  1630.     ELSE
  1631.         IMPORT_CFM_FUNCTION    StuffHex
  1632.     ENDIF
  1633.  
  1634. ;
  1635. ; pascal Boolean GetPixel(short h, short v)
  1636. ;
  1637.     IF ¬ GENERATINGCFM THEN
  1638.         _GetPixel:    OPWORD    $A865
  1639.     ELSE
  1640.         IMPORT_CFM_FUNCTION    GetPixel
  1641.     ENDIF
  1642.  
  1643. ;
  1644. ; pascal void ScalePt(Point *pt, const Rect *srcRect, const Rect *dstRect)
  1645. ;
  1646.     IF ¬ GENERATINGCFM THEN
  1647.         _ScalePt:    OPWORD    $A8F8
  1648.     ELSE
  1649.         IMPORT_CFM_FUNCTION    ScalePt
  1650.     ENDIF
  1651.  
  1652. ;
  1653. ; pascal void MapPt(Point *pt, const Rect *srcRect, const Rect *dstRect)
  1654. ;
  1655.     IF ¬ GENERATINGCFM THEN
  1656.         _MapPt:    OPWORD    $A8F9
  1657.     ELSE
  1658.         IMPORT_CFM_FUNCTION    MapPt
  1659.     ENDIF
  1660.  
  1661. ;
  1662. ; pascal void MapRect(Rect *r, const Rect *srcRect, const Rect *dstRect)
  1663. ;
  1664.     IF ¬ GENERATINGCFM THEN
  1665.         _MapRect:    OPWORD    $A8FA
  1666.     ELSE
  1667.         IMPORT_CFM_FUNCTION    MapRect
  1668.     ENDIF
  1669.  
  1670. ;
  1671. ; pascal void MapRgn(RgnHandle rgn, const Rect *srcRect, const Rect *dstRect)
  1672. ;
  1673.     IF ¬ GENERATINGCFM THEN
  1674.         _MapRgn:    OPWORD    $A8FB
  1675.     ELSE
  1676.         IMPORT_CFM_FUNCTION    MapRgn
  1677.     ENDIF
  1678.  
  1679. ;
  1680. ; pascal void MapPoly(PolyHandle poly, const Rect *srcRect, const Rect *dstRect)
  1681. ;
  1682.     IF ¬ GENERATINGCFM THEN
  1683.         _MapPoly:    OPWORD    $A8FC
  1684.     ELSE
  1685.         IMPORT_CFM_FUNCTION    MapPoly
  1686.     ENDIF
  1687.  
  1688. ;
  1689. ; pascal void SetStdProcs(QDProcs *procs)
  1690. ;
  1691.     IF ¬ GENERATINGCFM THEN
  1692.         _SetStdProcs:    OPWORD    $A8EA
  1693.     ELSE
  1694.         IMPORT_CFM_FUNCTION    SetStdProcs
  1695.     ENDIF
  1696.  
  1697. ;
  1698. ; pascal void StdRect(GrafVerb verb, const Rect *r)
  1699. ;
  1700.     IF ¬ GENERATINGCFM THEN
  1701.         _StdRect:    OPWORD    $A8A0
  1702.     ELSE
  1703.         IMPORT_CFM_FUNCTION    StdRect
  1704.     ENDIF
  1705.  
  1706. ;
  1707. ; pascal void StdRRect(GrafVerb verb, const Rect *r, short ovalWidth, short ovalHeight)
  1708. ;
  1709.     IF ¬ GENERATINGCFM THEN
  1710.         _StdRRect:    OPWORD    $A8AF
  1711.     ELSE
  1712.         IMPORT_CFM_FUNCTION    StdRRect
  1713.     ENDIF
  1714.  
  1715. ;
  1716. ; pascal void StdOval(GrafVerb verb, const Rect *r)
  1717. ;
  1718.     IF ¬ GENERATINGCFM THEN
  1719.         _StdOval:    OPWORD    $A8B6
  1720.     ELSE
  1721.         IMPORT_CFM_FUNCTION    StdOval
  1722.     ENDIF
  1723.  
  1724. ;
  1725. ; pascal void StdArc(GrafVerb verb, const Rect *r, short startAngle, short arcAngle)
  1726. ;
  1727.     IF ¬ GENERATINGCFM THEN
  1728.         _StdArc:    OPWORD    $A8BD
  1729.     ELSE
  1730.         IMPORT_CFM_FUNCTION    StdArc
  1731.     ENDIF
  1732.  
  1733. ;
  1734. ; pascal void StdPoly(GrafVerb verb, PolyHandle poly)
  1735. ;
  1736.     IF ¬ GENERATINGCFM THEN
  1737.         _StdPoly:    OPWORD    $A8C5
  1738.     ELSE
  1739.         IMPORT_CFM_FUNCTION    StdPoly
  1740.     ENDIF
  1741.  
  1742. ;
  1743. ; pascal void StdRgn(GrafVerb verb, RgnHandle rgn)
  1744. ;
  1745.     IF ¬ GENERATINGCFM THEN
  1746.         _StdRgn:    OPWORD    $A8D1
  1747.     ELSE
  1748.         IMPORT_CFM_FUNCTION    StdRgn
  1749.     ENDIF
  1750.  
  1751. ;
  1752. ; pascal void StdBits(const BitMap *srcBits, const Rect *srcRect, const Rect *dstRect, short mode, RgnHandle maskRgn)
  1753. ;
  1754.     IF ¬ GENERATINGCFM THEN
  1755.         _StdBits:    OPWORD    $A8EB
  1756.     ELSE
  1757.         IMPORT_CFM_FUNCTION    StdBits
  1758.     ENDIF
  1759.  
  1760. ;
  1761. ; pascal void StdComment(short kind, short dataSize, Handle dataHandle)
  1762. ;
  1763.     IF ¬ GENERATINGCFM THEN
  1764.         _StdComment:    OPWORD    $A8F1
  1765.     ELSE
  1766.         IMPORT_CFM_FUNCTION    StdComment
  1767.     ENDIF
  1768.  
  1769. ;
  1770. ; pascal void StdGetPic(void *dataPtr, short byteCount)
  1771. ;
  1772.     IF ¬ GENERATINGCFM THEN
  1773.         _StdGetPic:    OPWORD    $A8EE
  1774.     ELSE
  1775.         IMPORT_CFM_FUNCTION    StdGetPic
  1776.     ENDIF
  1777.  
  1778. ;
  1779. ; pascal void StdPutPic(const void *dataPtr, short byteCount)
  1780. ;
  1781.     IF ¬ GENERATINGCFM THEN
  1782.         _StdPutPic:    OPWORD    $A8F0
  1783.     ELSE
  1784.         IMPORT_CFM_FUNCTION    StdPutPic
  1785.     ENDIF
  1786.  
  1787. ;
  1788. ; pascal void AddPt(Point src, Point *dst)
  1789. ;
  1790.     IF ¬ GENERATINGCFM THEN
  1791.         _AddPt:    OPWORD    $A87E
  1792.     ELSE
  1793.         IMPORT_CFM_FUNCTION    AddPt
  1794.     ENDIF
  1795.  
  1796. ;
  1797. ; pascal Boolean EqualPt(Point pt1, Point pt2)
  1798. ;
  1799.     IF ¬ GENERATINGCFM THEN
  1800.         _EqualPt:    OPWORD    $A881
  1801.     ELSE
  1802.         IMPORT_CFM_FUNCTION    EqualPt
  1803.     ENDIF
  1804.  
  1805. ;
  1806. ; pascal Boolean PtInRect(Point pt, const Rect *r)
  1807. ;
  1808.     IF ¬ GENERATINGCFM THEN
  1809.         _PtInRect:    OPWORD    $A8AD
  1810.     ELSE
  1811.         IMPORT_CFM_FUNCTION    PtInRect
  1812.     ENDIF
  1813.  
  1814. ;
  1815. ; pascal void Pt2Rect(Point pt1, Point pt2, Rect *dstRect)
  1816. ;
  1817.     IF ¬ GENERATINGCFM THEN
  1818.         _Pt2Rect:    OPWORD    $A8AC
  1819.     ELSE
  1820.         IMPORT_CFM_FUNCTION    Pt2Rect
  1821.     ENDIF
  1822.  
  1823. ;
  1824. ; pascal void PtToAngle(const Rect *r, Point pt, short *angle)
  1825. ;
  1826.     IF ¬ GENERATINGCFM THEN
  1827.         _PtToAngle:    OPWORD    $A8C3
  1828.     ELSE
  1829.         IMPORT_CFM_FUNCTION    PtToAngle
  1830.     ENDIF
  1831.  
  1832. ;
  1833. ; pascal void SubPt(Point src, Point *dst)
  1834. ;
  1835.     IF ¬ GENERATINGCFM THEN
  1836.         _SubPt:    OPWORD    $A87F
  1837.     ELSE
  1838.         IMPORT_CFM_FUNCTION    SubPt
  1839.     ENDIF
  1840.  
  1841. ;
  1842. ; pascal Boolean PtInRgn(Point pt, RgnHandle rgn)
  1843. ;
  1844.     IF ¬ GENERATINGCFM THEN
  1845.         _PtInRgn:    OPWORD    $A8E8
  1846.     ELSE
  1847.         IMPORT_CFM_FUNCTION    PtInRgn
  1848.     ENDIF
  1849.  
  1850. ;
  1851. ; pascal void StdLine(Point newPt)
  1852. ;
  1853.     IF ¬ GENERATINGCFM THEN
  1854.         _StdLine:    OPWORD    $A890
  1855.     ELSE
  1856.         IMPORT_CFM_FUNCTION    StdLine
  1857.     ENDIF
  1858.  
  1859. ;
  1860. ; pascal void OpenCPort(CGrafPtr port)
  1861. ;
  1862.     IF ¬ GENERATINGCFM THEN
  1863.         _OpenCPort:    OPWORD    $AA00
  1864.     ELSE
  1865.         IMPORT_CFM_FUNCTION    OpenCPort
  1866.     ENDIF
  1867.  
  1868. ;
  1869. ; pascal void InitCPort(CGrafPtr port)
  1870. ;
  1871.     IF ¬ GENERATINGCFM THEN
  1872.         _InitCPort:    OPWORD    $AA01
  1873.     ELSE
  1874.         IMPORT_CFM_FUNCTION    InitCPort
  1875.     ENDIF
  1876.  
  1877. ;
  1878. ; pascal void CloseCPort(CGrafPtr port)
  1879. ;
  1880.     IF ¬ GENERATINGCFM THEN
  1881.         _CloseCPort:    OPWORD    $A87D
  1882.     ELSE
  1883.         IMPORT_CFM_FUNCTION    CloseCPort
  1884.     ENDIF
  1885.  
  1886. ;
  1887. ; pascal PixMapHandle NewPixMap(void)
  1888. ;
  1889.     IF ¬ GENERATINGCFM THEN
  1890.         _NewPixMap:    OPWORD    $AA03
  1891.     ELSE
  1892.         IMPORT_CFM_FUNCTION    NewPixMap
  1893.     ENDIF
  1894.  
  1895. ;
  1896. ; pascal void DisposePixMap(PixMapHandle pm)
  1897. ;
  1898.     IF ¬ GENERATINGCFM THEN
  1899.         _DisposePixMap:    OPWORD    $AA04
  1900.     ELSE
  1901.         IMPORT_CFM_FUNCTION    DisposePixMap
  1902.     ENDIF
  1903.  
  1904. ;
  1905. ; pascal void CopyPixMap(PixMapHandle srcPM, PixMapHandle dstPM)
  1906. ;
  1907.     IF ¬ GENERATINGCFM THEN
  1908.         _CopyPixMap:    OPWORD    $AA05
  1909.     ELSE
  1910.         IMPORT_CFM_FUNCTION    CopyPixMap
  1911.     ENDIF
  1912.  
  1913. ;
  1914. ; pascal PixPatHandle NewPixPat(void)
  1915. ;
  1916.     IF ¬ GENERATINGCFM THEN
  1917.         _NewPixPat:    OPWORD    $AA07
  1918.     ELSE
  1919.         IMPORT_CFM_FUNCTION    NewPixPat
  1920.     ENDIF
  1921.  
  1922. ;
  1923. ; pascal void DisposePixPat(PixPatHandle pp)
  1924. ;
  1925.     IF ¬ GENERATINGCFM THEN
  1926.         _DisposePixPat:    OPWORD    $AA08
  1927.     ELSE
  1928.         IMPORT_CFM_FUNCTION    DisposePixPat
  1929.     ENDIF
  1930.  
  1931. ;
  1932. ; pascal void CopyPixPat(PixPatHandle srcPP, PixPatHandle dstPP)
  1933. ;
  1934.     IF ¬ GENERATINGCFM THEN
  1935.         _CopyPixPat:    OPWORD    $AA09
  1936.     ELSE
  1937.         IMPORT_CFM_FUNCTION    CopyPixPat
  1938.     ENDIF
  1939.  
  1940. ;
  1941. ; pascal void PenPixPat(PixPatHandle pp)
  1942. ;
  1943.     IF ¬ GENERATINGCFM THEN
  1944.         _PenPixPat:    OPWORD    $AA0A
  1945.     ELSE
  1946.         IMPORT_CFM_FUNCTION    PenPixPat
  1947.     ENDIF
  1948.  
  1949. ;
  1950. ; pascal void BackPixPat(PixPatHandle pp)
  1951. ;
  1952.     IF ¬ GENERATINGCFM THEN
  1953.         _BackPixPat:    OPWORD    $AA0B
  1954.     ELSE
  1955.         IMPORT_CFM_FUNCTION    BackPixPat
  1956.     ENDIF
  1957.  
  1958. ;
  1959. ; pascal PixPatHandle GetPixPat(short patID)
  1960. ;
  1961.     IF ¬ GENERATINGCFM THEN
  1962.         _GetPixPat:    OPWORD    $AA0C
  1963.     ELSE
  1964.         IMPORT_CFM_FUNCTION    GetPixPat
  1965.     ENDIF
  1966.  
  1967. ;
  1968. ; pascal void MakeRGBPat(PixPatHandle pp, const RGBColor *myColor)
  1969. ;
  1970.     IF ¬ GENERATINGCFM THEN
  1971.         _MakeRGBPat:    OPWORD    $AA0D
  1972.     ELSE
  1973.         IMPORT_CFM_FUNCTION    MakeRGBPat
  1974.     ENDIF
  1975.  
  1976. ;
  1977. ; pascal void FillCRect(const Rect *r, PixPatHandle pp)
  1978. ;
  1979.     IF ¬ GENERATINGCFM THEN
  1980.         _FillCRect:    OPWORD    $AA0E
  1981.     ELSE
  1982.         IMPORT_CFM_FUNCTION    FillCRect
  1983.     ENDIF
  1984.  
  1985. ;
  1986. ; pascal void FillCOval(const Rect *r, PixPatHandle pp)
  1987. ;
  1988.     IF ¬ GENERATINGCFM THEN
  1989.         _FillCOval:    OPWORD    $AA0F
  1990.     ELSE
  1991.         IMPORT_CFM_FUNCTION    FillCOval
  1992.     ENDIF
  1993.  
  1994. ;
  1995. ; pascal void FillCRoundRect(const Rect *r, short ovalWidth, short ovalHeight, PixPatHandle pp)
  1996. ;
  1997.     IF ¬ GENERATINGCFM THEN
  1998.         _FillCRoundRect:    OPWORD    $AA10
  1999.     ELSE
  2000.         IMPORT_CFM_FUNCTION    FillCRoundRect
  2001.     ENDIF
  2002.  
  2003. ;
  2004. ; pascal void FillCArc(const Rect *r, short startAngle, short arcAngle, PixPatHandle pp)
  2005. ;
  2006.     IF ¬ GENERATINGCFM THEN
  2007.         _FillCArc:    OPWORD    $AA11
  2008.     ELSE
  2009.         IMPORT_CFM_FUNCTION    FillCArc
  2010.     ENDIF
  2011.  
  2012. ;
  2013. ; pascal void FillCRgn(RgnHandle rgn, PixPatHandle pp)
  2014. ;
  2015.     IF ¬ GENERATINGCFM THEN
  2016.         _FillCRgn:    OPWORD    $AA12
  2017.     ELSE
  2018.         IMPORT_CFM_FUNCTION    FillCRgn
  2019.     ENDIF
  2020.  
  2021. ;
  2022. ; pascal void FillCPoly(PolyHandle poly, PixPatHandle pp)
  2023. ;
  2024.     IF ¬ GENERATINGCFM THEN
  2025.         _FillCPoly:    OPWORD    $AA13
  2026.     ELSE
  2027.         IMPORT_CFM_FUNCTION    FillCPoly
  2028.     ENDIF
  2029.  
  2030. ;
  2031. ; pascal void RGBForeColor(const RGBColor *color)
  2032. ;
  2033.     IF ¬ GENERATINGCFM THEN
  2034.         _RGBForeColor:    OPWORD    $AA14
  2035.     ELSE
  2036.         IMPORT_CFM_FUNCTION    RGBForeColor
  2037.     ENDIF
  2038.  
  2039. ;
  2040. ; pascal void RGBBackColor(const RGBColor *color)
  2041. ;
  2042.     IF ¬ GENERATINGCFM THEN
  2043.         _RGBBackColor:    OPWORD    $AA15
  2044.     ELSE
  2045.         IMPORT_CFM_FUNCTION    RGBBackColor
  2046.     ENDIF
  2047.  
  2048. ;
  2049. ; pascal void SetCPixel(short h, short v, const RGBColor *cPix)
  2050. ;
  2051.     IF ¬ GENERATINGCFM THEN
  2052.         _SetCPixel:    OPWORD    $AA16
  2053.     ELSE
  2054.         IMPORT_CFM_FUNCTION    SetCPixel
  2055.     ENDIF
  2056.  
  2057. ;
  2058. ; pascal void SetPortPix(PixMapHandle pm)
  2059. ;
  2060.     IF ¬ GENERATINGCFM THEN
  2061.         _SetPortPix:    OPWORD    $AA06
  2062.     ELSE
  2063.         IMPORT_CFM_FUNCTION    SetPortPix
  2064.     ENDIF
  2065.  
  2066. ;
  2067. ; pascal void GetCPixel(short h, short v, RGBColor *cPix)
  2068. ;
  2069.     IF ¬ GENERATINGCFM THEN
  2070.         _GetCPixel:    OPWORD    $AA17
  2071.     ELSE
  2072.         IMPORT_CFM_FUNCTION    GetCPixel
  2073.     ENDIF
  2074.  
  2075. ;
  2076. ; pascal void GetForeColor(RGBColor *color)
  2077. ;
  2078.     IF ¬ GENERATINGCFM THEN
  2079.         _GetForeColor:    OPWORD    $AA19
  2080.     ELSE
  2081.         IMPORT_CFM_FUNCTION    GetForeColor
  2082.     ENDIF
  2083.  
  2084. ;
  2085. ; pascal void GetBackColor(RGBColor *color)
  2086. ;
  2087.     IF ¬ GENERATINGCFM THEN
  2088.         _GetBackColor:    OPWORD    $AA1A
  2089.     ELSE
  2090.         IMPORT_CFM_FUNCTION    GetBackColor
  2091.     ENDIF
  2092.  
  2093. ;
  2094. ; pascal void SeedCFill(const BitMap *srcBits, const BitMap *dstBits, const Rect *srcRect, const Rect *dstRect, short seedH, short seedV, ColorSearchUPP matchProc, long matchData)
  2095. ;
  2096.     IF ¬ GENERATINGCFM THEN
  2097.         _SeedCFill:    OPWORD    $AA50
  2098.     ELSE
  2099.         IMPORT_CFM_FUNCTION    SeedCFill
  2100.     ENDIF
  2101.  
  2102. ;
  2103. ; pascal void CalcCMask(const BitMap *srcBits, const BitMap *dstBits, const Rect *srcRect, const Rect *dstRect, const RGBColor *seedRGB, ColorSearchUPP matchProc, long matchData)
  2104. ;
  2105.     IF ¬ GENERATINGCFM THEN
  2106.         _CalcCMask:    OPWORD    $AA4F
  2107.     ELSE
  2108.         IMPORT_CFM_FUNCTION    CalcCMask
  2109.     ENDIF
  2110.  
  2111. ;
  2112. ; pascal PicHandle OpenCPicture(const OpenCPicParams *newHeader)
  2113. ;
  2114.     IF ¬ GENERATINGCFM THEN
  2115.         _OpenCPicture:    OPWORD    $AA20
  2116.     ELSE
  2117.         IMPORT_CFM_FUNCTION    OpenCPicture
  2118.     ENDIF
  2119.  
  2120. ;
  2121. ; pascal void OpColor(const RGBColor *color)
  2122. ;
  2123.     IF ¬ GENERATINGCFM THEN
  2124.         _OpColor:    OPWORD    $AA21
  2125.     ELSE
  2126.         IMPORT_CFM_FUNCTION    OpColor
  2127.     ENDIF
  2128.  
  2129. ;
  2130. ; pascal void HiliteColor(const RGBColor *color)
  2131. ;
  2132.     IF ¬ GENERATINGCFM THEN
  2133.         _HiliteColor:    OPWORD    $AA22
  2134.     ELSE
  2135.         IMPORT_CFM_FUNCTION    HiliteColor
  2136.     ENDIF
  2137.  
  2138. ;
  2139. ; pascal void DisposeCTable(CTabHandle cTable)
  2140. ;
  2141.     IF ¬ GENERATINGCFM THEN
  2142.         _DisposeCTable:    OPWORD    $AA24
  2143.     ELSE
  2144.         IMPORT_CFM_FUNCTION    DisposeCTable
  2145.     ENDIF
  2146.  
  2147. ;
  2148. ; pascal CTabHandle GetCTable(short ctID)
  2149. ;
  2150.     IF ¬ GENERATINGCFM THEN
  2151.         _GetCTable:    OPWORD    $AA18
  2152.     ELSE
  2153.         IMPORT_CFM_FUNCTION    GetCTable
  2154.     ENDIF
  2155.  
  2156. ;
  2157. ; pascal CCrsrHandle GetCCursor(short crsrID)
  2158. ;
  2159.     IF ¬ GENERATINGCFM THEN
  2160.         _GetCCursor:    OPWORD    $AA1B
  2161.     ELSE
  2162.         IMPORT_CFM_FUNCTION    GetCCursor
  2163.     ENDIF
  2164.  
  2165. ;
  2166. ; pascal void SetCCursor(CCrsrHandle cCrsr)
  2167. ;
  2168.     IF ¬ GENERATINGCFM THEN
  2169.         _SetCCursor:    OPWORD    $AA1C
  2170.     ELSE
  2171.         IMPORT_CFM_FUNCTION    SetCCursor
  2172.     ENDIF
  2173.  
  2174. ;
  2175. ; pascal void AllocCursor(void)
  2176. ;
  2177.     IF ¬ GENERATINGCFM THEN
  2178.         _AllocCursor:    OPWORD    $AA1D
  2179.     ELSE
  2180.         IMPORT_CFM_FUNCTION    AllocCursor
  2181.     ENDIF
  2182.  
  2183. ;
  2184. ; pascal void DisposeCCursor(CCrsrHandle cCrsr)
  2185. ;
  2186.     IF ¬ GENERATINGCFM THEN
  2187.         _DisposeCCursor:    OPWORD    $AA26
  2188.     ELSE
  2189.         IMPORT_CFM_FUNCTION    DisposeCCursor
  2190.     ENDIF
  2191.  
  2192.     IF OLDROUTINELOCATIONS  THEN
  2193. ;
  2194. ; pascal CIconHandle GetCIcon(short iconID)
  2195. ;
  2196.     IF ¬ GENERATINGCFM THEN
  2197.         _GetCIcon:    OPWORD    $AA1E
  2198.     ELSE
  2199.         IMPORT_CFM_FUNCTION    GetCIcon
  2200.     ENDIF
  2201.  
  2202. ;
  2203. ; pascal void PlotCIcon(const Rect *theRect, CIconHandle theIcon)
  2204. ;
  2205.     IF ¬ GENERATINGCFM THEN
  2206.         _PlotCIcon:    OPWORD    $AA1F
  2207.     ELSE
  2208.         IMPORT_CFM_FUNCTION    PlotCIcon
  2209.     ENDIF
  2210.  
  2211. ;
  2212. ; pascal void DisposeCIcon(CIconHandle theIcon)
  2213. ;
  2214.     IF ¬ GENERATINGCFM THEN
  2215.         _DisposeCIcon:    OPWORD    $AA25
  2216.     ELSE
  2217.         IMPORT_CFM_FUNCTION    DisposeCIcon
  2218.     ENDIF
  2219.  
  2220.     ENDIF
  2221. ;
  2222. ; pascal void SetStdCProcs(CQDProcs *procs)
  2223. ;
  2224.     IF ¬ GENERATINGCFM THEN
  2225.         _SetStdCProcs:    OPWORD    $AA4E
  2226.     ELSE
  2227.         IMPORT_CFM_FUNCTION    SetStdCProcs
  2228.     ENDIF
  2229.  
  2230. ;
  2231. ; pascal GDHandle GetMaxDevice(const Rect *globalRect)
  2232. ;
  2233.     IF ¬ GENERATINGCFM THEN
  2234.         _GetMaxDevice:    OPWORD    $AA27
  2235.     ELSE
  2236.         IMPORT_CFM_FUNCTION    GetMaxDevice
  2237.     ENDIF
  2238.  
  2239. ;
  2240. ; pascal long GetCTSeed(void)
  2241. ;
  2242.     IF ¬ GENERATINGCFM THEN
  2243.         _GetCTSeed:    OPWORD    $AA28
  2244.     ELSE
  2245.         IMPORT_CFM_FUNCTION    GetCTSeed
  2246.     ENDIF
  2247.  
  2248. ;
  2249. ; pascal GDHandle GetDeviceList(void)
  2250. ;
  2251.     IF ¬ GENERATINGCFM THEN
  2252.         _GetDeviceList:    OPWORD    $AA29
  2253.     ELSE
  2254.         IMPORT_CFM_FUNCTION    GetDeviceList
  2255.     ENDIF
  2256.  
  2257. ;
  2258. ; pascal GDHandle GetMainDevice(void)
  2259. ;
  2260.     IF ¬ GENERATINGCFM THEN
  2261.         _GetMainDevice:    OPWORD    $AA2A
  2262.     ELSE
  2263.         IMPORT_CFM_FUNCTION    GetMainDevice
  2264.     ENDIF
  2265.  
  2266. ;
  2267. ; pascal GDHandle GetNextDevice(GDHandle curDevice)
  2268. ;
  2269.     IF ¬ GENERATINGCFM THEN
  2270.         _GetNextDevice:    OPWORD    $AA2B
  2271.     ELSE
  2272.         IMPORT_CFM_FUNCTION    GetNextDevice
  2273.     ENDIF
  2274.  
  2275. ;
  2276. ; pascal Boolean TestDeviceAttribute(GDHandle gdh, short attribute)
  2277. ;
  2278.     IF ¬ GENERATINGCFM THEN
  2279.         _TestDeviceAttribute:    OPWORD    $AA2C
  2280.     ELSE
  2281.         IMPORT_CFM_FUNCTION    TestDeviceAttribute
  2282.     ENDIF
  2283.  
  2284. ;
  2285. ; pascal void SetDeviceAttribute(GDHandle gdh, short attribute, Boolean value)
  2286. ;
  2287.     IF ¬ GENERATINGCFM THEN
  2288.         _SetDeviceAttribute:    OPWORD    $AA2D
  2289.     ELSE
  2290.         IMPORT_CFM_FUNCTION    SetDeviceAttribute
  2291.     ENDIF
  2292.  
  2293. ;
  2294. ; pascal void InitGDevice(short qdRefNum, long mode, GDHandle gdh)
  2295. ;
  2296.     IF ¬ GENERATINGCFM THEN
  2297.         _InitGDevice:    OPWORD    $AA2E
  2298.     ELSE
  2299.         IMPORT_CFM_FUNCTION    InitGDevice
  2300.     ENDIF
  2301.  
  2302. ;
  2303. ; pascal GDHandle NewGDevice(short refNum, long mode)
  2304. ;
  2305.     IF ¬ GENERATINGCFM THEN
  2306.         _NewGDevice:    OPWORD    $AA2F
  2307.     ELSE
  2308.         IMPORT_CFM_FUNCTION    NewGDevice
  2309.     ENDIF
  2310.  
  2311. ;
  2312. ; pascal void DisposeGDevice(GDHandle gdh)
  2313. ;
  2314.     IF ¬ GENERATINGCFM THEN
  2315.         _DisposeGDevice:    OPWORD    $AA30
  2316.     ELSE
  2317.         IMPORT_CFM_FUNCTION    DisposeGDevice
  2318.     ENDIF
  2319.  
  2320. ;
  2321. ; pascal void SetGDevice(GDHandle gd)
  2322. ;
  2323.     IF ¬ GENERATINGCFM THEN
  2324.         _SetGDevice:    OPWORD    $AA31
  2325.     ELSE
  2326.         IMPORT_CFM_FUNCTION    SetGDevice
  2327.     ENDIF
  2328.  
  2329. ;
  2330. ; pascal GDHandle GetGDevice(void)
  2331. ;
  2332.     IF ¬ GENERATINGCFM THEN
  2333.         _GetGDevice:    OPWORD    $AA32
  2334.     ELSE
  2335.         IMPORT_CFM_FUNCTION    GetGDevice
  2336.     ENDIF
  2337.  
  2338. ;
  2339. ; pascal long Color2Index(const RGBColor *myColor)
  2340. ;
  2341.     IF ¬ GENERATINGCFM THEN
  2342.         _Color2Index:    OPWORD    $AA33
  2343.     ELSE
  2344.         IMPORT_CFM_FUNCTION    Color2Index
  2345.     ENDIF
  2346.  
  2347. ;
  2348. ; pascal void Index2Color(long index, RGBColor *aColor)
  2349. ;
  2350.     IF ¬ GENERATINGCFM THEN
  2351.         _Index2Color:    OPWORD    $AA34
  2352.     ELSE
  2353.         IMPORT_CFM_FUNCTION    Index2Color
  2354.     ENDIF
  2355.  
  2356. ;
  2357. ; pascal void InvertColor(RGBColor *myColor)
  2358. ;
  2359.     IF ¬ GENERATINGCFM THEN
  2360.         _InvertColor:    OPWORD    $AA35
  2361.     ELSE
  2362.         IMPORT_CFM_FUNCTION    InvertColor
  2363.     ENDIF
  2364.  
  2365. ;
  2366. ; pascal Boolean RealColor(const RGBColor *color)
  2367. ;
  2368.     IF ¬ GENERATINGCFM THEN
  2369.         _RealColor:    OPWORD    $AA36
  2370.     ELSE
  2371.         IMPORT_CFM_FUNCTION    RealColor
  2372.     ENDIF
  2373.  
  2374. ;
  2375. ; pascal void GetSubTable(CTabHandle myColors, short iTabRes, CTabHandle targetTbl)
  2376. ;
  2377.     IF ¬ GENERATINGCFM THEN
  2378.         _GetSubTable:    OPWORD    $AA37
  2379.     ELSE
  2380.         IMPORT_CFM_FUNCTION    GetSubTable
  2381.     ENDIF
  2382.  
  2383. ;
  2384. ; pascal void MakeITable(CTabHandle cTabH, ITabHandle iTabH, short res)
  2385. ;
  2386.     IF ¬ GENERATINGCFM THEN
  2387.         _MakeITable:    OPWORD    $AA39
  2388.     ELSE
  2389.         IMPORT_CFM_FUNCTION    MakeITable
  2390.     ENDIF
  2391.  
  2392. ;
  2393. ; pascal void AddSearch(ColorSearchUPP searchProc)
  2394. ;
  2395.     IF ¬ GENERATINGCFM THEN
  2396.         _AddSearch:    OPWORD    $AA3A
  2397.     ELSE
  2398.         IMPORT_CFM_FUNCTION    AddSearch
  2399.     ENDIF
  2400.  
  2401. ;
  2402. ; pascal void AddComp(ColorComplementUPP compProc)
  2403. ;
  2404.     IF ¬ GENERATINGCFM THEN
  2405.         _AddComp:    OPWORD    $AA3B
  2406.     ELSE
  2407.         IMPORT_CFM_FUNCTION    AddComp
  2408.     ENDIF
  2409.  
  2410. ;
  2411. ; pascal void DelSearch(ColorSearchUPP searchProc)
  2412. ;
  2413.     IF ¬ GENERATINGCFM THEN
  2414.         _DelSearch:    OPWORD    $AA4C
  2415.     ELSE
  2416.         IMPORT_CFM_FUNCTION    DelSearch
  2417.     ENDIF
  2418.  
  2419. ;
  2420. ; pascal void DelComp(ColorComplementUPP compProc)
  2421. ;
  2422.     IF ¬ GENERATINGCFM THEN
  2423.         _DelComp:    OPWORD    $AA4D
  2424.     ELSE
  2425.         IMPORT_CFM_FUNCTION    DelComp
  2426.     ENDIF
  2427.  
  2428. ;
  2429. ; pascal void SetClientID(short id)
  2430. ;
  2431.     IF ¬ GENERATINGCFM THEN
  2432.         _SetClientID:    OPWORD    $AA3C
  2433.     ELSE
  2434.         IMPORT_CFM_FUNCTION    SetClientID
  2435.     ENDIF
  2436.  
  2437. ;
  2438. ; pascal void ProtectEntry(short index, Boolean protect)
  2439. ;
  2440.     IF ¬ GENERATINGCFM THEN
  2441.         _ProtectEntry:    OPWORD    $AA3D
  2442.     ELSE
  2443.         IMPORT_CFM_FUNCTION    ProtectEntry
  2444.     ENDIF
  2445.  
  2446. ;
  2447. ; pascal void ReserveEntry(short index, Boolean reserve)
  2448. ;
  2449.     IF ¬ GENERATINGCFM THEN
  2450.         _ReserveEntry:    OPWORD    $AA3E
  2451.     ELSE
  2452.         IMPORT_CFM_FUNCTION    ReserveEntry
  2453.     ENDIF
  2454.  
  2455. ;
  2456. ; pascal void SetEntries(short start, short count, CSpecArray aTable)
  2457. ;
  2458.     IF ¬ GENERATINGCFM THEN
  2459.         _SetEntries:    OPWORD    $AA3F
  2460.     ELSE
  2461.         IMPORT_CFM_FUNCTION    SetEntries
  2462.     ENDIF
  2463.  
  2464. ;
  2465. ; pascal void SaveEntries(CTabHandle srcTable, CTabHandle resultTable, ReqListRec *selection)
  2466. ;
  2467.     IF ¬ GENERATINGCFM THEN
  2468.         _SaveEntries:    OPWORD    $AA49
  2469.     ELSE
  2470.         IMPORT_CFM_FUNCTION    SaveEntries
  2471.     ENDIF
  2472.  
  2473. ;
  2474. ; pascal void RestoreEntries(CTabHandle srcTable, CTabHandle dstTable, ReqListRec *selection)
  2475. ;
  2476.     IF ¬ GENERATINGCFM THEN
  2477.         _RestoreEntries:    OPWORD    $AA4A
  2478.     ELSE
  2479.         IMPORT_CFM_FUNCTION    RestoreEntries
  2480.     ENDIF
  2481.  
  2482. ;
  2483. ; pascal short QDError(void)
  2484. ;
  2485.     IF ¬ GENERATINGCFM THEN
  2486.         _QDError:    OPWORD    $AA40
  2487.     ELSE
  2488.         IMPORT_CFM_FUNCTION    QDError
  2489.     ENDIF
  2490.  
  2491. ;
  2492. ; pascal void CopyDeepMask(const BitMap *srcBits, const BitMap *maskBits, const BitMap *dstBits, const Rect *srcRect, const Rect *maskRect, const Rect *dstRect, short mode, RgnHandle maskRgn)
  2493. ;
  2494.     IF ¬ GENERATINGCFM THEN
  2495.         _CopyDeepMask:    OPWORD    $AA51
  2496.     ELSE
  2497.         IMPORT_CFM_FUNCTION    CopyDeepMask
  2498.     ENDIF
  2499.  
  2500. ;
  2501. ; pascal void DeviceLoop(RgnHandle drawingRgn, DeviceLoopDrawingUPP drawingProc, long userData, DeviceLoopFlags flags)
  2502. ;
  2503.     IF ¬ GENERATINGCFM THEN
  2504.         _DeviceLoop:    OPWORD    $ABCA
  2505.     ELSE
  2506.         IMPORT_CFM_FUNCTION    DeviceLoop
  2507.     ENDIF
  2508.  
  2509. ;
  2510. ; pascal Ptr GetMaskTable(void)
  2511. ;
  2512.     IF ¬ GENERATINGCFM THEN
  2513.         ; returns: 
  2514.         ;     Ptr               <= A0
  2515.         _GetMaskTable:    OPWORD    $A836
  2516.     ELSE
  2517.         IMPORT_CFM_FUNCTION    GetMaskTable
  2518.     ENDIF
  2519.  
  2520. ;
  2521. ; pascal PatHandle GetPattern(short patternID)
  2522. ;
  2523.     IF ¬ GENERATINGCFM THEN
  2524.         _GetPattern:    OPWORD    $A9B8
  2525.     ELSE
  2526.         IMPORT_CFM_FUNCTION    GetPattern
  2527.     ENDIF
  2528.  
  2529. ;
  2530. ; pascal CursHandle GetCursor(short cursorID)
  2531. ;
  2532.     IF ¬ GENERATINGCFM THEN
  2533.         _GetCursor:    OPWORD    $A9B9
  2534.     ELSE
  2535.         IMPORT_CFM_FUNCTION    GetCursor
  2536.     ENDIF
  2537.  
  2538. ;
  2539. ; pascal PicHandle GetPicture(short pictureID)
  2540. ;
  2541.     IF ¬ GENERATINGCFM THEN
  2542.         _GetPicture:    OPWORD    $A9BC
  2543.     ELSE
  2544.         IMPORT_CFM_FUNCTION    GetPicture
  2545.     ENDIF
  2546.  
  2547. ;
  2548. ; pascal long DeltaPoint(Point ptA, Point ptB)
  2549. ;
  2550.     IF ¬ GENERATINGCFM THEN
  2551.         _DeltaPoint:    OPWORD    $A94F
  2552.     ELSE
  2553.         IMPORT_CFM_FUNCTION    DeltaPoint
  2554.     ENDIF
  2555.  
  2556. ;
  2557. ; pascal void ShieldCursor(const Rect *shieldRect, Point offsetPt)
  2558. ;
  2559.     IF ¬ GENERATINGCFM THEN
  2560.         _ShieldCursor:    OPWORD    $A855
  2561.     ELSE
  2562.         IMPORT_CFM_FUNCTION    ShieldCursor
  2563.     ENDIF
  2564.  
  2565. ;
  2566. ; pascal void ScreenRes(short *scrnHRes, short *scrnVRes)
  2567. ;
  2568.     IF ¬ GENERATINGCFM THEN
  2569.         Macro
  2570.         _ScreenRes
  2571.             dc.w     $225F
  2572.             dc.w     $32B8
  2573.             dc.w     $0102
  2574.             dc.w     $225F
  2575.             dc.w     $32B8
  2576.             dc.w     $0104
  2577.         EndM
  2578.     ELSE
  2579.         IMPORT_CFM_FUNCTION    ScreenRes
  2580.     ENDIF
  2581.  
  2582.     IF OLDROUTINENAMES  THEN
  2583.     ENDIF
  2584.     ENDIF ; __QUICKDRAW__
  2585.